Episode Transcript
Transcripts are displayed as originally observed. Some content, including advertisements may have changed.
Use Ctrl + F to search
0:00
Sé Reed: Thank you. 3, 2, 1.
0:06
Jason Tucker: This is episode number 479 of WPwatercooler, to bot or not to bot.
0:12
Sé Reed: That is the question. With that question mark, though, I just realized
0:16
Jason Tucker: I'm Jason Tucker. You can go to my website at jasontucker.
0:19
blog. Sé Reed: who owns that blog anyway?
0:22
Hey, I'm say Reed. I do say read things at, say read me on Media on all the things.
0:30
Jason Cosper: And y'all know who it is. It's your boy, Jason Cosper, back at it again on the world's most
0:35
influential WordPress podcast.
0:39
Jason Tucker: you can go find it wherever it is. That great podcast can be found and the best part of the whole thing.
0:44
Go hang out in our discord at watercoolerslack.
0:47
lol. Sé Reed: I was going to say, you can find us wherever the best podcasts are, and
0:54
probably wherever the worst podcasts are. Because I guess they're
0:58
Jason Cosper: We don't discriminate Sé Reed: no, a lot of yeah, in general.
1:04
So speaking of the watercoolerslack.
1:07
lol, We actually this episode today is inspired by our discord
1:14
and one of our channels that is inspired by one of our shows.
1:20
So it's Jason Cosper: It's turtles all the way down.
1:24
Sé Reed: exactly. It's just, it is its own thing.
1:28
We are the Ouroborealists or whatever that is, which I think I'm
1:32
contractually Ouroborous, which I'm now contractually obligated to mention.
1:36
At least once a show. Yeah.
1:40
So we have a channel there called DevBranch, named after the show DevBranch
1:47
which in case you don't know is the first of the month, every month.
1:54
And yeah, it'll be the next episode and it's where we get slightly geekier and
1:59
I don't ask as many dumb questions.
2:02
I try to ask the geekier questions.
2:07
And anyway, we do the same in the channel, in the Discord, and on Tuesday
2:13
of this week one of our awesome, long time listener, friend of the
2:17
show people, Rachelle was saying, hey people, who knows anything about
2:23
how do we get these pages to behave?
2:27
And I Not just procrastinating, although this is my favorite way
2:32
to procrastinate, so this is why this whole thing happened, really.
2:36
I'm literally, have been dealing with the same issue, and I had actually
2:39
brought it up previously in that channel, talking about using a CPT versus
2:46
a page in order to determine paths.
2:50
The problem with pages, it's chaos.
2:54
It's just, Jason Cosper: for the people who did not realize that they weren't tuning into
3:00
DevBranch, a custom CPT is a custom post
3:04
Sé Reed: right yeah, it's custom post type which is a choice to make between
3:10
yeah, how you want to structure it, but custom post types have a defined
3:14
path for their post type which makes sense so they don't conflict with it.
3:19
pages or posts of the same titles, which is actually a problem that happens a lot.
3:25
But, the default, the pages, the land of the pages, which, to my
3:33
knowledge, and correct me if I'm wrong, anyone on the chat, on the internet,
3:37
there's no name for that screen.
3:40
What do we call that screen? The pages screen?
3:44
The list of pages? Because now we have the list thing in the block list.
3:50
Pages admin? Right?
3:54
It's so forgotten, it doesn't even have a name.
3:56
That is, it's just no man's land.
4:00
It's just pages. The pages page.
4:04
Jason Cosper: Page. Sé Reed: The page is page.
4:08
Anyway, so that page is natively just almost as bad as the media library and
4:15
longtime listeners of the show know how I feel about the media library
4:19
and the chaos that ensues within it.
4:24
You know what the thing is that WordPress search is not good
4:27
enough have that level of chaos.
4:31
That is really what it's about, like the WordPress native search, if it was going
4:34
to have that level of disorganization, then the search need, needs to be better,
4:39
because that's the reason kids these days don't look for stuff because on their
4:43
Macs, or they don't put stuff in folders, this is like a generational thing, they
4:47
just use search, you just search a drive, search whatever, and Google search works
4:51
great on your drive Mac search works.
4:55
I don't know what all you Windows people are doing. Jason Cosper: On my iPhone, I have one home screen.
5:01
I have the most common what?
5:05
Eight apps and then down in like my little dock, I have another,
5:09
the four apps that I always use. And then I have a Siri
5:14
Sé Reed: Like a search bar? Jason Cosper: No. It's a Siri what apps we think you'll need given like on
5:21
Sé Reed: The time of day and, yeah, exactly.
5:23
You usually use this app. Jason Cosper: and I have no other home screens.
5:27
Everything else is shoved into the library.
5:30
And normally when I launch an app, I just, cause it's a newer version of
5:34
iOS, just pull down and get the little search thing and type in what I need.
5:39
Like Sé Reed: Exactly.
5:43
So that is the it's not just the new generation, obviously.
5:48
I feel the same way. We've been having chaotic just documents and screenshot folders since the 90s.
5:56
But when you have clients accessing their pages, the chaos
6:03
of that, and the search, again, not working in a way that is useful.
6:07
Even the search results can be so confusing with the orders
6:11
that they're in, because pages are decoupled from subpages, and
6:14
it's just like a bunch of lines. Anyway!
6:18
Long story short, we got talking about why that is how it would be better
6:24
organized and that we need it for the various, like for the actual projects
6:30
that we're working on at this week, like I had a big presentation this
6:34
week for a client and I didn't have to do the backend, but I'm thinking
6:37
about how to construct this, right?
6:40
How to make it so that they can access it in a way that makes sense
6:43
to them grouping their pages by.
6:47
Maybe it's by area, location or topic or type of page, like our,
6:53
here's our cluster of about pages. And unless you create the sub page hierarchy, there is really
7:01
no organization there natively. So we found a plugin called nested plug nested pages, which was pretty cool.
7:11
And it's one of these various, I've had this on various with various other plugins
7:16
where you can essentially You know, drag and drop your page order, right?
7:20
It's Jason Cosper: Sure. Sé Reed: using the page order, the secret page order feature of pages.
7:27
Has anyone ever used that in the past decade?
7:30
Jason Tucker: Yeah, all the time. Sé Reed: Do you really?
7:34
But it shows up on the site. It doesn't show up on the
7:37
Jason Tucker: number, the menu, whatever they call it.
7:39
Sé Reed: the backend by the menu number also? How do you like use hundreds or something?
7:45
Like a Dewey Decimal System? Because if you're just using 1 through 10 and you make
7:50
a new page, what do you do? What do you do?
7:52
Jason Tucker: just old school and do everything by hundreds.
7:55
Yeah. Sé Reed: everything by hundreds? Okay, that works.
7:58
Then you've got Jason Tucker: or hundreds, depending on how many pages I know it's going to be.
8:02
Sé Reed: Literally, that's like the Dewey Decimal System.
8:04
Jason Tucker: And then I put a go sub somewhere in there so
8:07
I can make sure I can go back. Sé Reed: On the
8:14
Jason Tucker: it. Yeah,
8:17
Sé Reed: Okay on the backend we were talking about, I've been
8:21
using Airtable a lot, which I talk about a lot on the show, and you
8:25
can group It's a database, right?
8:28
So you can group data by your by whatever category, whatever field you define it by.
8:35
And something so simple as that, I was like I'm procrastinating.
8:40
Why not hop on over to my friend ChatGPT and just see what it says.
8:46
Because this actually seems rather simple. I need a page taxonomy, and I need an admin to display something in groups.
8:53
That's not wildly complicated, right? Reasonable
8:57
Jason Cosper: would think, Sé Reed: Yeah, right? I I could clean, or I could talk to ChatGPT and make plugins.
9:04
One, one and the other. All right. So anyway, I was asking it, I was just telling it, I need to make this.
9:09
And it told me what I needed to do. And I was like, great.
9:12
Can you please write that plugin? And I'm, I don't know if you will let me share my screen.
9:17
You let me share my screen over here so I can show this to
9:19
people while I talk about it. All right. So this is a, do I hit present?
9:24
Oh, I don't think I've ever do this one. That's fun.
9:27
I don't think I've done this one before. Let's see, here we go.
9:32
Am I sharing the right one? Hopefully. Jason Tucker: of as getting a clicker and then getting the clicker
9:37
on stage and you're like, Oh, I've never used a clicker before.
9:40
Let's Sé Reed: Is this the right screen, though, that I'm doing?
9:43
Jason Tucker: Just push push command plus a couple of times
9:45
so we can read the words. Sé Reed: Oh for sizing.
9:49
Okay. Anyway, I just want to show it also so I don't have to remember it.
9:53
Hold on. I'll increase the size here.
9:55
Whoa, look at that. Okay, so basically, I was like, what should I do?
10:01
I need to group some pages with the taxonomy, and it was like,
10:04
here, do this, and I was like, cool, can you write it instead?
10:07
And it's sure, here, I wrote it for you.
10:10
It's gives me the PHP file with the plugin name, and it's just go ahead and
10:14
take that pop it in there, make sure you define these other things, right?
10:18
And I was like what if instead yeah, I was like, what should I call it?
10:22
And then I was like, what if instead you just generate the other files that I need?
10:26
And it's okay, here you go. I've generated your plugin.
10:30
And it says, if you can't, if you're listening, it says, download
10:33
custom page group display plugin. And I was like, oh,
10:36
Jason Tucker: wild to me. Sé Reed: Yeah, I was like, I didn't know I could download things.
10:40
Jason Tucker: I want to know, does chat GPT use a Mac to
10:42
make the zips or does it use Sé Reed: No.
10:45
See, so I downloaded the file, but it's unzipped.
10:48
Okay. So then I zipped the file I didn't put it on production.
10:54
This is the question we're going to get to eventually. So I zipped the file and then I uploaded it now and actually uploaded
11:00
it to Playground, WP Playground.
11:02
Cause I was like, this is the perfect use case, right?
11:04
For Playground. And it's like invalid archive.
11:09
No, cause then I went back.
11:12
Jason Tucker: is you're using Safari, right? Sé Reed: No, I'm using Chrome.
11:17
Jason Tucker: Okay. Sé Reed: Why is that funny?
11:20
Jason Tucker: Shouldn't have down, when it downloaded the zip file, it should just kept the zip file, didn't
11:23
Sé Reed: It didn't, it wasn't a zip file. Jason Tucker: it. Sé Reed: It wasn't a zip file yet.
11:28
Jason Tucker: a Sé Reed: It was a PHP file.
11:30
It was a folder with a PHP file in it. And then I asked it, can you zip that for me?
11:34
And it was like, yeah, sure, here you go.
11:37
And then I was like, oh, there's an error what should I do about this error?
11:41
But actually, I didn't even have to do anything about that error because
11:44
Rochelle was like, oh you have a plugin is, beginning of your So I just took
11:50
it out, and then it worked perfectly.
11:54
But that's what it did. It literally worked perfectly on, on Playground.
12:00
And it's a really simple plugin.
12:02
Like it's not complicated, right? This is literally popping a taxonomy onto pages, which I've done.
12:08
I'm trying to see where it is. The whole thing is like up here.
12:12
It just pops the text on me onto some pages. I've done that before.
12:15
And then it makes a new admin screen called grouped pages, and then it just
12:20
shows the pages per group on that page.
12:23
It's wildly simple. So we've got this code.
12:28
And then Cosper over here starts talking about putting memes in the chat
12:36
about not using bots on production and how I'm a terrible coder and all this.
12:42
Jason Cosper: I never said you were a terrible coder.
12:45
Sé Reed: I know, I'm just kidding. No that that I shouldn't be it's these are legitimate concerns, right?
12:54
I'm not I'm like, I actually could use this on the site that I'm using right now.
12:58
I'm just kidding. This is, it works on Playground and I was like, huh, what what, you
13:07
should put up some of the memes that you were putting up, basically, but
13:11
there's definitely I've done some cowboy coding in my day, but there's
13:17
a difference between cowboy coding yourself and literally just sticking
13:23
some code that was generated into your site, but I've been thinking about this.
13:28
Thanks. Bye. And I have been taking random people's code off the internet and sticking it
13:32
into various things for a very long time.
13:37
Like, all the time. I take things off Githubs and StackExchanges and
13:42
Jason Tucker: Yeah, Sé Reed: WordPress sites I'm,
13:46
Jason Tucker: person that just cooked up something real quick, has no idea
13:49
what you're talking about, other than I want the end result to be this.
13:52
And then they go okay, Sé Reed: but I can
13:55
Jason Tucker: the navigation walker that you need in order to be able to make
13:58
this thing show up and you're like, sure.
14:00
Okay. And then 500 lines of code later
14:04
Sé Reed: never 500 lines of Jason Tucker: The the page is active, be purple and you're like,
14:09
Sé Reed: Okay, here's the deal. I know, I can read code, right?
14:13
So it's like when you can speak a language but you can't read it, or you can
14:16
read a language but you can't speak it. I'm not great at the things I don't know, but the things that
14:23
I do know, I can totally read it and fix it and write it, whatever.
14:29
Then I have to go research whenever I see a I get caught.
14:32
This is how I learned to code. This is how I've been learning to code my entire life is
14:37
basically, do I need to do a thing?
14:39
And then I go teach myself how to do things.
14:41
That's basically how that works. So I find out the answer.
14:46
What, how do you learn to code? Jason Tucker: you weren't in like Paris or something and you pulled out chat GPT
14:51
and said, hi, I would like the following to be made for me in this restaurant
14:56
and you'd list off the type of fish you want and what thing it needs to be
15:00
and dah, and you list it all out.
15:03
And then you say, and you just hold it up to the person and say, I want this.
15:06
And it's written in French and you're like, I couldn't even read this.
15:09
I don't even know what this is here. Do this thing for me.
15:13
You didn't do that. Sé Reed: You're saying like, if I were in a restaurant with a menu,
15:17
Jason Tucker: Yeah. You can read the code and you can go, Oh, the code says that I'm going to
15:21
be using a WP query and it's going to be searching for this and I'm going
15:25
to have it isolate that, and then I'm going to have this be displayed.
15:28
Like you can read it. Sé Reed: Yeah. Okay.
15:30
So this isn't, this doesn't need to be about me specifically, but the
15:35
thing is I was like, Oh what tests are there where I could test this?
15:42
Like I can go through and read this code everything that's going on here.
15:46
Do I always know if it's coded?
15:49
To the current standards, do I know that it's cleaning AF Advanced Custom
15:55
Fields recently put out a big banner on some actual live sites that I have
16:01
that says the field is unescaped, we've detected this field being unescaped
16:06
somewhere, and we're going to stop supporting this, and then on, Then I
16:10
get another one that said actually, it's probably not a breaking change.
16:15
You're fine. I'm like, okay, what are you doing guys?
16:18
I don't know what's happening. Jason Tucker: So you could ask GPT is there something else
16:22
that's in here that I need you to like can you harden this code more?
16:28
Sé Reed: Okay. But isn't that asking an industry to regulate itself?
16:32
You're like, Jason Tucker: this? Jason Cosper: of, Sé Reed: you really should test yourself better.
16:37
Jason Tucker: and you went and got some other GPT system
16:41
Code and then tell you if it needs to change some stuff,
16:45
Sé Reed: like pit them against each other. Like I go, I put it, actually I could, cause I have a, what's the one on GitHub?
16:51
Is it copilot, I think? I didn't put this in the right repository for that, but I should
16:56
put this in a copilot repository, and then make copilot fix the chat
17:01
GPT code, and then make the robot
17:03
Jason Tucker: explain to me what this does. Sé Reed: It does what it does it's very simple, right?
17:10
This is a very simple request, and honestly, I'm shocked.
17:16
At my inability to find it in existence, in the existing plugins directory
17:23
there's lots of ordering things around, but I'm like, are we not grouping pages?
17:26
Is this not who, the problem is developers don't use websites,
17:32
this is the real problem. They don't know what we need.
17:36
ChatGPT is giving me what I need.
17:41
Jason Cosper: sure. Okay. So to I know this
17:45
Sé Reed: I'm looking for you to play devil's advocate here.
17:48
Jason, you're not helping because you're like, it sounds great, you should just
17:51
Jason Tucker: Look, if it was JavaScript, have at it Jason Cosper: right.
17:56
Now, so Jason Tucker: go wrong. It's on the browser.
17:58
Who cares? Jason Cosper: one of the things that I would do here when giving, or
18:04
when taking code from one of these large language models whether you're
18:10
using chat GPT, you're using Gemini
18:14
Sé Reed: gonna call it that. Jason Cosper: Facebook, I'm sorry.
18:18
Sé Reed: I know. Jason Cosper: Facebook has one that it released that's focused on coding
18:26
Sé Reed: What's that one called? Jason Cosper: so it's called Code Llama.
18:31
And that is you can get at that on there's a site for like
18:37
open models called Hugging Face. Sé Reed: Oh, yeah, I've seen that, but I don't want to do anything that
18:42
has anything to do with Facebook ever. Jason Cosper: sure they also
18:48
Sé Reed: over Llama. I like llamas.
18:50
Nothing against llamas. Thanks. Jason Cosper: Perplexity which is another AI tool has like a labs section
18:58
where they have some more common models and it they have a interface that will
19:05
give you access to that Codelama model.
19:09
There's no history save chat GPT or Google stuff.
19:14
Sé Reed: More like a playground instance version of it.
19:17
You
19:21
Jason Cosper: what I would do with any code that I would ask a large language
19:29
model for is I would basically run that code through like a PHP code sniffer
19:36
with the WordPress coding standards which You know, both of those things
19:43
and those are being supported and everything else through what, through
19:51
Sé Reed: mean financially? Jason Cosper: and yeah, financially through OpenCollective and
19:56
Sé Reed: 000 a month from Automatic.
20:00
Jason Cosper: great. Sé Reed: Just FYI.
20:03
Jason Cosper: Sure. Yeah. Please
20:06
Sé Reed: There's more there. There's other, there's additional stuff there.
20:08
You can go support. I'm just saying, it is, that's an investment.
20:12
Jason Cosper: Absolutely. And we need to make sure that
20:16
Sé Reed: with the bus factor. Down with the bus factor.
20:19
Jason Cosper: We need to make sure that things like match
20:23
up to the coding standards. I know that the tests that the plugin team runs are a lot more thorough.
20:32
Sé Reed: I'm not submitting it to the repo.
20:35
I, that would, I would require some I don't want to deal with that because it's
20:41
just this is why I don't make plugins.
20:44
This is really opened up a whole Pandora's box because back in the day I would build
20:48
more functionality and now I don't build functionality because I use plugins for
20:52
that because then the plugin can stay up to date and the client is not dependent
20:57
on me if they want to leave or if I don't.
21:00
We're not going to work together for a couple years, which doesn't ever happen.
21:04
So I don't know why I worry about it. They never leave.
21:08
Jason Cosper: Put the plugin up on GitHub.
21:11
Sé Reed: I did. I did put the plugin up on GitHub.
21:13
I can link to it in the show notes because I would love some some polls.
21:20
I feel like this is like a if we're going to this is a community plugin.
21:25
Like it's not only is it a collaboration between a robot and myself,
21:32
but it was also stemmed from DevBranch and collaborative procrastination.
21:37
And also, Maybe that should be the name of the developer for it.
21:43
Collaborative Procrastination. That's Jason Tucker: I love
21:46
Sé Reed: like the best term I've ever heard of. So yeah, it's really a dev branch, inspired, a Discord inspired plugin.
21:58
I think it's pretty cool. Jason Cosper: Sure.
22:01
Sé Reed: just make a bunch of plugins and solve our own problems.
22:04
Jason Cosper: Yeah. The scratch, scratching our own edge
22:09
Sé Reed: Yeah, but like then if more people are using it and supporting it
22:12
and being like, oh, we got to keep this up to date, then it's not the same thing
22:16
as I have to make sure that every client that I've ever installed this on
22:21
has up to date stuff all the time that's so much, and then you just, everyone's
22:30
got a little bit of time, someone over here has some time to do some CSS ing,
22:33
and someone over here has some time to do whatever isn't that the whole
22:37
point of the open source It's like this collaborative approach instead of this
22:43
world where we're dependent on all these plugins that we're paying people for and
22:49
still getting, I don't know, but even the nested plugins in its I'm looking at
22:56
it, it's great, but in its actual plugin description, it's got free versus pro.
23:00
It's hijack those little details, view more info.
23:04
I don't even know what you, what do you call that? The links on the Plugmin admin page?
23:10
Those get hijacked. And this one has free versus pro right there.
23:14
So it's do you buy the pro just to get rid of the upsell
23:19
inside of the free plugin? And then
23:21
Jason Tucker: now you can add that to your own plugin. Sé Reed: seriously, I could scrape it out of there.
23:26
Jason Tucker: you make the background of my plugin list in
23:28
the plugin listing rainbow color?
23:31
Can you make it do all this like extra marketing stuff?
23:34
Jason Cosper: If you're not going to you're not interested in maintaining it.
23:39
So you don't want to put it in the repo. You are going to encourage people to.
23:44
Submit patches if they find it useful.
23:47
I would argue, and I'm going to share my screen really quick.
23:51
There is a tag you can add to your repository that says and this is
23:57
something that just came across, came to my attention recently is no
24:01
maintenance intended, and you basically say Hey, use this at your own risk.
24:09
I am not maintaining this.
24:11
I'm putting this up here Sé Reed: I like that.
24:13
Jason Cosper: it useful, but no maintenance intended.
24:18
Something that I also think is
24:21
Sé Reed: that it's really clear. Stating your intentions, that's wonderful.
24:24
But also do it if happy to do it.
24:27
Jason Cosper: Yeah. Sé Reed: wanna change that because I'd be like if you do a pull request,
24:31
I actually will probably look at it, but no promises, but probably 'cause
24:35
I want it to be up to date too. But then I just have to review their stuff.
24:40
Or trust that person be like, what?
24:43
That, so then you have to actually do a code review.
24:46
It's like Jason Cosper: Oh Sé Reed: becomes not just solving a problem
24:49
Jason Tucker: are just going to look at the code. Sé Reed: Exactly.
24:52
, it's a bot. And then the pull request that someone's doing is actually also with their bot.
24:57
And so their bot writes it. Jason Tucker: generated this.
25:01
Sé Reed: Oh, is there a tag for that yet? Because I, I put it in the, I put it in the plugin notes.
25:06
Jason Cosper: It wouldn't surprise me in this is, this actually makes me
25:10
think of I don't know if the two of you are, either of the two of you are
25:16
familiar with Simon Wilson Simon Wilson does a lot of he maintains this thing
25:25
dataset and he has done something very similar Jason, your mind was blown.
25:34
At whoa, that zoomed in too much.
25:37
Sé Reed: Let me remind you that your mind was blown.
25:40
Jason Cosper: Yeah Sé Reed: Remember how your mind was blown?
25:43
Jason Cosper: that it, didn't she blow your mind this time?
25:47
Didn't Sé Reed: I? Didn't she? Didn't Simon?
25:51
Jason Tucker: Yes,
25:59
Jason Cosper: dissimilar from you, where he was taking his dog for a walk.
26:04
And he had the chat GPT mobile app, write, compile, and test a C
26:12
extension written in C to SQLite and basically shared that, but so that
26:23
he could figure out distances between two lat, latitude and longitude points.
26:28
Like Sé Reed: Havershine distances? Jason Cosper: completely wild that
26:33
Sé Reed: what is that? What does Havershine distances
26:37
Is that a term? Jason Cosper: I can't even pretend to
26:40
Sé Reed: New England? It sounds New England y
26:44
Jason Cosper: The fact Sé Reed: or British. Jason Cosper: He took and had a large language model in this
26:50
case, chat GPT turn around and make an extension to SQlite.
26:58
And compile it just like you did where it's like, Oh, also zip this
27:04
Sé Reed: Also, just make the whole thing, please, and label it, and I'll just
27:07
use whatever title you come up with. It's great.
27:09
What do you want to? Jason Cosper: This stuff I do think that this stuff is remarkable.
27:15
I do not trust the code quality.
27:18
This is like asking like a
27:22
Sé Reed: Is that you being paranoid or you being safe?
27:25
Sorry, I interrupted your analogy. Jason Cosper: No yes to both, but mostly safe.
27:30
No, Jason Tucker: What if
27:33
Sé Reed: being paranoid and safe. Wait, I want to hear the analogy.
27:36
It's like being a first year what? I'm dying to know.
27:39
I interrupted you, but I need this story.
27:41
Jason Cosper: it's like giving a coding test to like a first
27:44
year programming student. It's they will do the job, but they might get some shit wrong.
27:51
Sé Reed: Right. Jason Cosper: And you have to know what they got wrong.
27:58
I've, Sé Reed: the bot has to know. Jason Cosper: I've dabbled a little bit when I saw that CodeLlama, and
28:05
we'll make sure that the link to the interface for that is, is in the show
28:10
notes, if anyone wants to play with that I've asked CodeLlama once I heard Oh,
28:16
it's actually pretty good at this stuff.
28:18
It's better than a lot of the other models.
28:22
Sé Reed: You mean at testing or standards? Jason Cosper: Yeah, I asked it to do Oh, can you make me a
28:29
WordPress plugin that does this? Or can you give me some code that'll do this?
28:33
And Sé Reed: See, you're doing it too.
28:37
Jason Cosper: but I'm not putting it into production.
28:40
I'm not Sé Reed: didn't yet put it into production.
28:43
I, you didn't put it on GitHub. Jason Cosper: I was.
28:45
Sé Reed: irresponsible? Putting it on GitHub? Jason Cosper: If it works and you know that the code is going to be safe,
28:54
like I don't want to necessarily attach my name or my GitHub account to some
29:01
shit that a computer like tossed off.
29:04
Jason Tucker: What if, say, hire someone on Fiverr to to refactor the
29:08
Sé Reed: This is exactly what I'm saying.
29:12
Like, where this took me down an entire rabbit hole because I started
29:19
questioning all of the coding research that I've done in my entire very
29:23
much homespun dev career, right?
29:28
The, the I pay attention to WordPress and things for that reason, right?
29:35
Specifically so I know what's going on, but I have absolutely become
29:39
dependent on everyone else knowing what's going on and updating it in
29:43
their plugins so that I don't have to maintain all of this various stuff.
29:49
But the other problem I'm facing is that I feel like there's less stuff of quality
29:55
in the plugin repo than there used to be, and it's not just that there's more.
30:01
What was it? I was, oh, I was looking for a plugin that did would do a default image for
30:09
posts in various taxonomies, right?
30:11
Pretty basic. Like that's something I've done before.
30:15
I think I've written it, I've hand coded it in most of the time.
30:19
But again, I'm trying to stay on top, like I'm trying to keep things in
30:23
plugin form in order to allow for the code to be updated and isolated and
30:29
not connected to the, just trying to build it in that sort of decoupled way.
30:34
So whether I'm building a plugin, which I try not to do, or someone else does,
30:39
It's still in that modular format.
30:42
But I found that, so first of all, didn't find a lot of solutions for this.
30:48
And I'm like, I swear I've solved this problem before with more better solutions.
30:53
But you either get plugins that are like, oh, here, this does literally everything.
30:57
And it's a suite. And there's 10 versions of a tier on the pro version.
31:00
And it's up to 300 a year or whatever.
31:04
And this This category thing is like one tiny feature in
31:07
the corner in one version. And then you've got also three super basic ones that look like
31:15
they were almost exactly the same.
31:17
They had like really similar names and the way the readmes were written were
31:23
even just on the main page was like, Here's how you install it and giving
31:27
like page templates and I'm like this is that's I could just write the freaking
31:31
page template code if that's what I was doing like this is just pulling the code
31:37
that I would write anyway into a plugin that's now look hooked to whoever this
31:40
is you know with their 10, 000 installs and updated in the last three months or
31:45
whatever right so My, my trust level in the plugin directory has gone way down,
31:52
I realized, and my, my I don't know where these, now these plugins are coming
32:00
from I don't, they look cloned, they look like they've changed a couple different
32:04
things, and they're in here, a lot of them aren't being updated, a lot of them are,
32:09
like A couple WordPress versions back, so even if they might still work, they still
32:15
are, I don't know, it feels like you can't go ahead with that sort of thing, right?
32:22
Feels almost as irresponsible as, I don't know, having chatGPT write the code.
32:27
So am I downloading and using and there's nothing but arguably more
32:40
complicated linking me to who a member of this random person is linking the
32:44
site to that for however long, or reverting now back to how I used to do
32:51
it, where I'm building little bespoke plugins for all of these different
32:55
things and now having to update them.
32:58
I feel like I don't even ChatGPT makes it a lot easier to write those, and I
33:05
guess maybe to stay up to date, maybe?
33:10
If there was a WordPress AI bot, that would be pretty handy for
33:15
this, but, anyway, this is an existential dilemma that I am
33:20
facing, and I feel like I am back.
33:23
To how I started building out WordPress sites, and even with, I don't even want
33:29
to get started on how the site editor makes me feel like that, because I
33:32
have to start controlling and building out page templates, which I haven't
33:35
been dealing with in a long time. Jason Cosper: Sure.
33:37
Sé Reed: Dealing with page template files again, I'm like, just parts and templates,
33:42
like I haven't had to deal with that. So now I, I'm both advancing over here on the chat GPT side, able to
33:50
make custom code, but at the same time, now I'm responsible for even
33:55
all the CSS and what's the we've got safety considerations, we've
34:02
got aesthetic considerations, we've got maintenance considerations,
34:06
Jason Tucker: always had safety considerations. That's the thing.
34:10
Sé Reed: Yeah, I guess I just trusted the plugin repo more.
34:16
Like I and I, it's useless now.
34:19
I don't trust that they'll stay updated. Jason Cosper: This makes me, this reminds me, this makes me think of something
34:27
that grandpa Simpson said in the Simpsons, which is, I used to be with
34:32
it, but then they changed what it was.
34:35
Now what I'm with, isn't it anymore?
34:37
And what's, it seems weird and scary.
34:40
happen to Jason Tucker: Dang. Sé Reed: I think you just called me old first of all.
34:44
And second of all, what is the it that we're even talking about?
34:48
Are we just back to what's the it
34:50
Jason Tucker: it's all of it. Jason Cosper: Yeah.
34:53
Sé Reed: are, I'm wondering if it is WordPress.
34:58
Oh, Jason Tucker: I don't know.
35:01
The GPT stuff has been changing in like my tool set at work quite a bit,
35:08
having one liners written where you have one line of code, that's
35:13
going to do a thing for you. It, I just type in, Hey, I want to do this thing.
35:18
Can you make it happen? And it's sure. I'll create a new user.
35:22
I'll add them to a group and I will give them these permissions.
35:25
It's. And I can read it and I can see that it's doing that thing, but
35:29
I didn't have to write any of it. Just did it.
35:33
Jason Cosper: I use AI stuff very sparingly and what I use it for,
35:38
yes, is one liners like that, Hey I need otherwise inscrutable
35:46
program that does everything FFmpeg, which Tucker I already see
35:53
nodding FFmpeg is a command line
35:56
Jason Tucker: Midos will be written in regular expression the entire way through.
36:00
Yeah.
36:03
Jason Cosper: any media file into basically any other media file.
36:07
Like you can give it a video and it'll just strip out and
36:12
make it into an MP3 for you. You want the video it's a MOV and you want it to be an MP4.
36:20
You want it to be an AVI, like it'll do it for
36:25
Sé Reed: I think I've used this back in the day. This is an old thing, like Napster days, like Livewire, Limewire.
36:32
Jason Cosper: Yeah you need to be able to speak FFmpeg and yeah,
36:40
it's a whole language unto itself.
36:42
Tucker said, it may as well be regular expressions in
36:45
Jason Tucker: Dash this, dash that. You end up with 900 different things you have to string along.
36:52
Jason Cosper: You can tell FFmpeg, you, you give it a URL of some like
36:58
playlist on like the BBC website, and it'll download episodes of
37:03
like the BBC radio shows for you.
37:06
Like you don't have to install like a special downloader.
37:09
It's a wild Sé Reed: But is this AI or is this just
37:13
Jason Tucker: No, it's Jason Cosper: This Sé Reed: This is just computers, right?
37:16
Jason Tucker: your computer. It's just Sé Reed: So really, what's the difference between AI and computers?
37:20
We're talking gendered, really. Jason Cosper: know that FFmpeg can do the thing that I'm looking for.
37:26
So this is what I've been using AI for is, Hey, how do I get FFmpeg to download
37:36
something based off this playlist URL
37:38
Sé Reed: it's your Rosetta Stone. That's how you're using it.
37:41
Jason Cosper: Exactly. Sé Reed: It's like your, or your Philosopher's Stone.
37:44
Or maybe I'm using it as a Philosopher's Stone and you're
37:46
using it as a Rosetta Stone. Jason Cosper: I'm basically using it to not have to spend half an hour reading
37:52
a man page on the Unix command line.
37:57
And just tell me the command I need to run so I can move on with my day.
38:01
Sé Reed: But that's exactly what this is. That's exactly what I asked ChatGPT to do in this case, right?
38:09
Jason Cosper: You're, you need something that will
38:12
Sé Reed: it yeah I'm deploying it in the long term on the internet
38:15
as opposed to a little utility on my computer for one time.
38:19
Jason Cosper: exactly. Sé Reed: So it needs to be able to withstand the waves of
38:26
the ocean that is the internet. My ship must be seaworthy.
38:30
Jason Cosper: If my Jason Tucker: All the other code that you copied and pasted off of
38:33
every other website on the internet. That's the thing.
38:35
Jason Cosper: Every everything else that you put into your
38:38
themes functions dot PHP, it's
38:41
Sé Reed: I've never put anything weird in there.
38:43
I've never done that. And no, I've never white screen to site doing that ever.
38:48
Jason Cosper: no, not once, Jason Tucker: Nope.
38:50
Nope. Sé Reed: Not last week, not the week before that.
38:55
Hey, look, it's staging sites, okay? And now I've got Playground to break too, so it's not even a big deal.
39:01
Break it, fix it, break it to fix it, or whatever,
39:04
Jason Tucker: yeah. So
39:06
Sé Reed: All right Jason Tucker: so what's right then? We went in circles a few times here, but what's right.
39:13
So it's okay to go take random code that's a code off the internet and paste
39:18
Sé Reed: or use it for FFmpeg. Jason Tucker: that could have been broken wrote it.
39:23
Or you have a, you have code that was derived from a bunch of humans
39:27
that was stolen off the internet and then put into a plugin that
39:32
Sé just asked the robot to make, Sé Reed: Yeah the robot is just taking it off the internet anyway, right?
39:38
In theory, it's just using the docs and all this stuff.
39:41
Jason Tucker: The copy and paste. Jason Cosper: You're taking,
39:44
Sé Reed: in, in between the WP beginners and the whatever other all the different
39:50
stack exchanges, the code that I usually end up with, And in the past, let's
39:55
say, is really often the same code.
39:57
And that's part of how I would compare it, right?
39:59
Be like, oh, they're saying this solution, they're saying this solution, neither
40:03
of those work, what if I combine this, Jason Cosper: sure, you're taking money out of the hands of the people
40:12
on Fiverr who will just use AI to write the code for you anyway.
40:18
So you are taking money out of the marketplace and
40:22
Sé Reed: Really, that's the problem here. Is I am not propping, I've never used Fiverr for I'm if
40:28
I'm gonna, I'm just, I Fiverr Jason Cosper: You are better for that.
40:33
But now you are using the Fiverr that just makes a bunch of VCs money.
40:40
Sorry. Jason Tucker: can do now is she can now make a Udemy course on how to do chat
40:45
GPT coding, and then she can be the one that's telling other people to do it.
40:50
Sé Reed: No, dear God. Jason Tucker: into the
40:53
Sé Reed: It's a circle. It's a circle of tech.
40:58
Jason Tucker: Yeah. I don't know what the, I don't know what the the answer is here and I
41:02
don't think we can find that answer. It's, it just,
41:06
Sé Reed: But I do want to know, I'm just going to run this through PHP
41:09
code sniffer and make sure I don't have any open ends anywhere, basically,
41:13
and then I think I'm going to use it. Jason Cosper: yeah.
41:16
And Sé Reed: I can read it.
41:19
I know what it's doing. I'm going to clean it up a little, maybe put a little some spacing.
41:24
I, Jason Cosper: needed ChatGPT to write the code for you, you might
41:30
actually need ChatGPT to help you set up PHP code sniffer because
41:37
Sé Reed: were to write this myself, which I could, by the way,
41:39
and I started to do, I was like, oh, let's open a GitHub of this.
41:43
I don't know, sorry if you can hear my dog, because now I have a barking puppy.
41:46
Sorry, everyone. I don't know what to do about that yet, because it's new.
41:50
But in the old, I would just be like, Oh, I'm going to figure out how to do this.
41:53
And I'd be like what do I need? I need to how do I make my page taxonomy?
41:58
And I'd go look that up. And then I cause I don't keep it all up here, even though I've done it before.
42:03
So I'd go look that up and then I'd go look up. All right I got to put a new screen in my admin.
42:07
That's this, I vaguely remember. So I need to go look that up also.
42:11
And then I'm just pulling stuff from what is the docs now and what's the codecs?
42:17
So just asking the bot is doing something I know how to do.
42:21
It's just honestly, I wasn't expecting the file.
42:24
It really Jason Tucker: Yeah. But the whole thing, thanks for writing this code for me.
42:27
Now I need you to test it. Jason Cosper: Yeah I was going to say,
42:32
Jason Tucker: it's like Volkswagen trying to do the the smog test,
42:36
Jason Cosper: see. See if you can, it zipped it for you.
42:39
And that was a surprise. Simon Wilson is saying compile this C code for me
42:46
and write an SQLite extension.
42:49
Like the next step, let's see, say go on, keep doing this and
42:57
see if it will run phpcs for you.
43:02
I, Sé Reed: oh my God, that's a great idea.
43:06
Jason Tucker: Just load that bad boy up and type it Sé Reed: love this idea.
43:09
Jason Cosper: Yeah, you just have to engineer the prompt, right?
43:14
I would not trust it would do it myself, but I understand that
43:22
not everybody has the same free time and priorities that I do.
43:28
Sé Reed: Okay, so what you're saying is you're going to go look at my code and
43:31
do a pull request if you see a problem? Jason Cosper: no.
43:35
Sé Reed: Okay, I guess the bot will do it for me, so there you go.
43:39
Jason Tucker: Yeah I think as long as Sé does a challenging and tells it that
43:43
I need you to get a PHP code sniffer, the source code of it, and then compile it for
43:48
Ruby and then have it run it against it.
43:52
Then I'll be impressed. Jason Cosper: Sure.
43:56
Sé Reed: Anyone wants to, I'm so sorry about this dog, but if
43:58
anyone wants to hop in the discord and come look at it, we'll put
44:01
Jason Tucker: Yeah, I'm Sé Reed: github in the show notes. Feel free to do a pull request and I really haven't done a lot with the code.
44:09
I don't think I've done anything with the code except for fix the The naming
44:12
and take out the initial space, so it's literally from the robot's mouth.
44:19
Feel free to go in there and we can build this together and make it nice.
44:23
Sure, why not? Jason Tucker: We will all bring our robots to the party
44:26
and they will all code for us. Sé Reed: Yeah, bring me your robot.
44:30
Tell Jason Cosper: Ain't nothing better. Robot party.
44:33
Party. Sé Reed: Come be not chatbots with us on our channel.
44:37
Oh, and see my puppy. Jason Tucker: Hey, thank you very much for the two of you to come hang out as always.
44:44
And come hang out with us in our discord. Please do.
44:48
It's fun. We have a great time and people are really enjoying URL down below.
44:54
Talk to y'all later. You have a good one. Here's our outro.
45:00
Oh, that outro that I talked about.
45:06
com slash subscribe to this content.
45:09
We'd really appreciate it. There's plenty of ways you can listen to us and watch us and all that fun
45:14
Sé Reed: swear I'll get Jason Tucker: go find those places and go do that.
45:17
And find us over on discord.
45:20
Talk to y'all later.
Podchaser is the ultimate destination for podcast data, search, and discovery. Learn More