Episode Transcript
[00:00:00] Speaker A: Welcome to Within WordPress, the podcast with people from WordPress. And that is something I can definitely say about this episode, because with us today is somebody who you will have seen at maybe not any WordCamp, but a lot of WordCamps. You will have seen her at Contributor Day, and you will have seen her giving quite, quite good workshops, I would say.
Welcome, Milana.
[00:00:36] Speaker B: Thank you.
Should I say now something about my.
[00:00:42] Speaker A: You know, you can. I was going to ask is, is that. Is that. Am I covering all bases or is that. I mean, there's more to you than just going to wordcamps, but. Yes, please introduce yourself.
[00:00:53] Speaker B: Yes. Okay. So for anyone who doesn't know how to pronounce my last name, let's start there. Oh, yeah, my name is Milana Thop, and that's how you pronounce the Slavic last name. And yes, I'm at most contributor days with the lady with the cookies. And there is a story behind the cookies.
Some people know the story.
I also give quite a few talks. My idea for my talks is. So when I first started giving talks in 2018 or 17, I don't remember, I said to myself, you will not be yet another female developer speaker whose code we never saw.
So I made it my point to not just show you my code, but to actually write the code in front of you. So, you know, it's my code, and that's kind of limiting with the topics, but I am enjoying it. And, you know, the musician in me is having a lot of fun while doing that.
So, yes, I'm also a musician and I'm representative for WordPress documentation team. I'm WordPress engineer.
By sheer curiosity, I'm also a member of Plugins review team and I don't know what else. Single mom from Serbia. But, you know, my child is adult now, so I don't know if I could really, you know, and we don't live together anymore.
[00:02:41] Speaker A: I was gonna say, I think the determining factor here. Does she still live at home?
[00:02:45] Speaker B: No. No, she doesn't. Well, she does live at home. I don't live at home anymore.
[00:02:53] Speaker A: Yeah, that was complicated at all. Yeah, no, yeah, I think that's a. That's a good start. I mean, I. I've known you for more than a decade, so I think there's more stuff that I could recollect here to. To also add to the mix. But I. I think the. The thing that people will recognize you the most from is, is your general presence on wordcamps and, and the topics you cover there, because they're quite.
Yeah, they're quite the type kind of topics that aren't being touched too much. And you pick the topics that I particularly enjoy a lot to the point that I think that we're not covering them at all considering the amount of presentations and talks and workshops we have.
Because, you know, let's start with the first one. You talk a lot about WP cli and for most people WP cli or I should probably just say the cli, the command line is a scary place. It's not for you. So how did that happen?
[00:04:12] Speaker B: Well, I switched from Windows to Linux in 2009. End of 2009, I had a dual boot for I don't know, four or five months. But I've never switched back to Windows. I was like, I really like this. This is so intuitive to me. And I don't know where things are in Windows. It's just confusing. Generally Graphic User Interface is very tedious to me. You have to remember where things are. Then you have to click here and click there and go there. Command line is just, you know, do this for me and you machine and machine does it. So the first thing that is very important is not to be scared. So people, people are scared of, you know, doing things to their computers that will completely blow things up.
And especially with websites, especially with productions, it's like, you know, your heart starts beating very fast. If you're just gonna like change one category for one post, you know, via WP cli.
I mean you would do it in Graphic User interface as well. It's just this is something like behind the scenes and you don't know if, if it's gonna happen or it's not gonna happen. Well, News Computer doesn't do anything you.
[00:05:50] Speaker A: Don'T tell it to do unless you're doing rmrf.
[00:05:54] Speaker B: Okay.
[00:05:56] Speaker A: Because I mean, I think that's where a lot of the fear from people comes from.
The general Linux command to remove recursively files.
[00:06:06] Speaker B: What does it stand for?
[00:06:08] Speaker A: And then you end up with an entirely wiped.
Well, there's not even an OS on there anymore, is there? It's just, it's wiped. There's.
[00:06:20] Speaker B: Yeah, yeah.
[00:06:20] Speaker A: I think people have that type of horror stories in their head when they talk about, you know, the command line. But yeah, it's, there's nothing scary.
[00:06:30] Speaker B: But here's the thing, here's the thing that people forget. In Graphic User Interface you don't have explanation what this is doing. Maybe you do if the software is okay, but you don't have like if I click this what's going to happen while in cli, you can always, and you should always, if you're not sure, just have Dash Dash help and it will show you, it will give you everything. You don't have to leave terminal at all. And you have help available all the time.
And you know, after a few things, just trying out, just doing things like show me this, don't do anything, just show me this, list me this, and then you can kind of feel confident that you might actually do something there.
[00:07:25] Speaker A: Yeah, I think that's a good, very good advice that for those who've never been on the command line, any, any command you add. Well, just start with the general command, there's wp and then you add a space and then it's hyphen, hyphen, help. And it'll tell you exactly what it can and cannot do. And that help is everywhere as you're navigating on the command line. It sounds weird because do you actually navigate, but you have commands to your disposal that are filled with help information.
It's all there.
[00:08:00] Speaker B: And not just help. In WP cli, you have examples that you can go and copy, paste. And even today, like I'm There are things that I use WP CLI only WP cli, like for installing, activating, deactivating plugins and themes. I don't use graphic user interface at all.
Also many other things, like when I do a project and for example, I'm creating, I don't know, block control to add custom field, some option or something like that. I'm checking with WP CLI if that I'm not opening the database and look for those things because it's much easier and still I use it every day. I use it a lot. And there are things I don't even know anymore how to do in WordPress Dashboard and still I type help all the time because I forgot how to type it. You know which command comes Is it delete? Is it remove? Is it whatever? You know, help is your really best help and best friend.
[00:09:22] Speaker A: You know what my most favorite thing about how WP CLI enhances WordPress? Because when I'm on the command line and I need to do this thing. So first off, the only mistake I keep making is the verb and noun sequence. Like is it WP plugin first or do it? No, hold on.
Every now and then it's always none.
[00:09:44] Speaker B: It's always none. Unless it isn't.
[00:09:47] Speaker A: I know, I know, but that for some reason my head is confused for that. So every single Time. I'm confused. The autocomplete function is just brilliant.
Like it's just. You think this is one. Let me hit the first two letters and hit tab, see if something happens. Oh no, that was not good. Just two backspaces and I used the other version around.
What are your favorite things to do in on the command line? Is that the settings type of stuff or is it the creation type of stuff or the installation? I mean, if you spend a lot of time, surely they're not very singular commands all the time.
[00:10:25] Speaker B: Yeah, no. What I really like when I feel like a magician is it's when I combine two or three commands to do stuff more fast. For example, things that you could have a need to do more frequently is change something on all posts or all posts in a category or all taxonomies.
This is when you have to combine two commands and you will have one command that will list which will do the loop and the other command that will actually do something to each of these items in this loop.
So knowing just that when I have to do something like that and not doing any help, like, I know this and I do this, you know, from this first try and it's working and I see millions of things happening. I'm like, I'm a wizard. You know, I'm a witch.
[00:11:39] Speaker A: It may sound corny for those listening and go like, no, no, no. Never, never ever in my life will the command line give me the I am a wizard. But it will. It's just.
[00:11:48] Speaker B: Yeah.
[00:11:49] Speaker A: The shorthand to complex commands is basically what you're doing.
It's one of my favorite as well.
How many times do you find yourself installing extra WP CLI libraries?
Do you. Do you do that at all?
[00:12:11] Speaker B: I have some of those actually packages.
I have the admin command for a long time because it's such a simple life savior. Because I don't want to type URL and I don't want to even memorize the local URL.
Then I have scaffold for creating for a scaffolding package. And I don't know, I don't even remember if scaffold is actually coming with.
With WP CLI or you have to install it.
[00:12:53] Speaker A: I don't actually know because it's one of the very few things. I rarely use the command line for. This. This for me is the is.
[00:12:59] Speaker B: Oh, I do. I do use. I actually, I don't remember when was the last time when I created a plugin differently than the scaffold.
Also scaffolding the taxonomy or custom post Types.
[00:13:16] Speaker A: Custom post types.
[00:13:18] Speaker B: Yeah.
Then there are other commands, like for profiling and I don't remember the exact names of commands, but actually for checking if everything is okay. And all those things that are not really doing anything, just profiling and giving you the info about stuff.
[00:13:45] Speaker A: Yeah, those two are my favorites. The WP profile, I'll install that on any Dr. There is Dr. And Dr. Yeah, those two. Yeah, those are my favorites because on the analysis side of things, you get so much information from that.
And, and what I also do is I.
So what you just mentioned that if you have a WP CLI command that needs to do something, but needs to do it over a loop, you can insert the wplist command inside that function, and that works wonderfully. What I find myself doing a lot, like a lot lot is turn a bunch of commands and mix them sort of with Bash. So there's a sequence of things that need to happen or one of my favorite things to use for a new site. Anybody who's ever installed a new WordPress site and does so professionally, professionally changes a few things by default.
[00:14:44] Speaker B: Yes.
[00:14:45] Speaker A: You remove the example post, the sample page, the comment change the time zone change. You know, there's a whole bunch of stuff you change every single time. And I've seen people click through it and just be done in seven minutes. And I go like, here's the script. There's a lot of lines here, but just run this script. And it's a whole bunch of WP CLI commands that in sequence, change, delete, and do all the things. And it's. And it's done. Like, yeah, I should probably say zap and it's done.
[00:15:18] Speaker B: Yeah.
Actually in Serbian, there. There is this thing like top, like something was done, done in Snap.
And it was always annoying to me when teachers knew that.
[00:15:36] Speaker A: I'm sure you can do that in Snap. Yeah. No, not funny.
Yeah. But yeah, WPCLI never ceases to amaze me how much fun you can have with that and how few people are still actually using it.
[00:15:51] Speaker B: And you know what I really, really love?
Because when I do talks, I start from one point. There is a WordPress install that has nothing or some really small things changed. And then I do stuff to that. And after that, when I prepare the same install for the next talk, I need to bring it to the first, you know, the initial state. So I have Bash scripts for every talk, like cleanup, and it has a lot of those things like delete this, create a, you know, new git branch, and then uninstall this plugin, install this and set this. So that's a bash script with a bunch of different combinations of tools and clis inside. And I'm just so happy when I finish my talk, I just do the push to the repo to have the code for that talk and then just clean and I watch it going back and I'm ready for next talk.
[00:16:57] Speaker A: Yeah, yeah. There's a lot of fun to be had with WP cli. There's a lot of automation. You can do that. You gave a good example of how to reset your entire installation back to step zero.
I have scripts that do, for instance, the whole security check, like, is everything still original?
Is there no junk in folders where it shouldn't be? That type of everything is automated and there's just no way you can do that from the dashboard. Like, sure, there's security plugins that can do that for you and kinda. But that's such a convoluted way of doing things.
And it's so easy. It's so easy.
[00:17:40] Speaker B: But also, if you take a look at that, you have to have a list of things to do today. Like, I have to check this, I have to do this, I have to. You have to write that list somewhere and why not make that list a bash script that will actually do that for you?
[00:17:58] Speaker A: Like, exactly.
Yeah, yeah, it's one of those hidden things.
What's your best advice for people who are kind of afraid to start, but maybe are hearing this now and hear us rave about it for 15 minutes and you go, maybe I should check it out? What's the best thing to do?
[00:18:19] Speaker B: I think that the best thing about clis is that you can use it as advanced or as intermediate as you want. So, you know, you can start with two commands and use just those two commands for the rest of your life. And the thing is people are scared that now you have to learn all of it. You have to if you want to use the tool, but that's not the case. It's not like you have to learn the whole WordPress to be able to write for WordPress. And you know, you have to understand the system. You don't have to know every command, you don't have to use every command. Start small, start with two commands that will actually do nothing, that will just list posts, list users, give you the WordPress version. So it's not going to change anything, but you will use it. And then, you know, after two weeks or three, depending on what is your plan. I always have a plan when I introducing a new tool in my life.
So if you have a plan like I'm gonna do this, I'm gonna start using it for most of the things in next two months. So every week you can add new command or you can adapt it to what you are doing currently.
So if you are working a lot with custom post types you can do, you can find all the commands that are actually using custom post types and that gives you some kind of information of the post types and just show that to yourself. Just list things and start small. Then see, oh, I have to change this. Let's see if there is a command for that and add two more commands every two weeks and you will feel more natural in.
[00:20:21] Speaker A: Just learn incrementally and start small with.
[00:20:24] Speaker B: Zero impact things or you don't have to at all. You can use it just to give yourself a list of information and that's it. Even that is helpful.
[00:20:35] Speaker A: Yeah, yeah.
Somebody once told me years, years ago, like, yeah, I use WPC LI as well and I, I run WPDB export all the time whenever I do something and I go like great, so where do you send off those SQL files that are being stored on your server? And he went like, that's a good question. I think they're still there.
[00:21:01] Speaker B: I'm like, well, oh wow.
[00:21:06] Speaker A: And he was in luck because the host had configured that if there's a SQL anywhere in the public HTML file folder, you can't find them. So he emailed me back few days later I figured it out, it's why it hasn't been a problem. I go, why? Well, apparently the host blocks everything. Okay, you have a very smart host. That's good, that's good.
[00:21:31] Speaker B: Yeah. There are also hosts that don't allow you to download directly file. Like if you navigate directly to the DB file actually SQL file, you, you cannot download it. So that's also what, what some hosts do that. I see.
[00:21:48] Speaker A: Yeah, I think that's similar to what this host did. But it's, it was, it was fun because he told me, he, he told me the, the thing he did. Like you know, zero impact, no problem here.
[00:22:00] Speaker B: I'm like, yeah, are you sure a.
[00:22:03] Speaker A: Raw SQL file in the root of your website is not necessarily the best thing to do?
But yeah, wpcli, for those of you listening and you're almost convinced, find yourself wpcli.org I think the, the main website is for all the documentation. You'll find plenty of examples, plenty of fun stuff that you can do with it. And like Milana said, it's a It's a great thing to even play on the information side of things. Just have a list stuff. Just. Just fun.
This is one topic I see you talk about a lot.
There's another one that I really enjoy that you are highlighting it.
It's actually two things, but let's start with the.
So WordPress, frequently, I would say in the last two, three years, frequently has either introduced or seriously expanded on an existing API.
One of the more fun ones is the Interactivity API.
And I thought that was cool for you to pick that one up and talk about it, because it's an API that I think for the future versions of WordPress is going to become more and more important.
But for those listening who have no idea what the Interactivity API is.
Do you have a tldr?
[00:23:36] Speaker B: Yes, I do. It's a new standard.
So remember when people started creating blocks and everybody was doing it their way and it was horrible and you never knew if you open someone else's block folder, you never knew what you're going to find there. And everybody had their naming conventions and coding conventions and you could do it vanilla JavaScript or you could do it in slint or whatever.
It was very, very difficult to understand, especially on top of what it was very difficult for PHP developers to understand how React functions. How is that connected to WordPress?
Where do I put this index JS file and how. How do I call it? You know, a lot of things were unclear in documentation and in our understanding of React and Gutenberg and this mixed layer of PHP and react inside of WordPress. And then everybody was doing it their own way and you didn't know how, how to actually do it. And most of the time I thought I was so stupid for that and I feel so much all the people who also felt stupid. But then we got the script create block and now when you run this script, you know exactly, when you see the files in there, you know exactly is this dynamic block, is this static block. You know what files you will find there and what will be in those files. That means having a standard. So when I open someone else's block, I know exactly what I'm looking for. Am I looking for the namespace, I know where to find it. Am I looking for how the block behaves on the front end? I know it's Vue js, I know everything where it is, It's a standard. So Interactivity API is another standard and it's a standard for the thing that we were missing, which is the front end part of Gutenberg blocks. So creating Block and it was the most difficult for us to create blog that do something inside of editor and we would do something on the front end like jquery or whatever. It's going to be a Frankenstein. And it was already a mess because now we also had to understand that this block doesn't know anything about its neighbors, it's not aware of its surroundings. It was also very difficult for us to understand. Like PHP application knows about its beginning and end and everything in between. But block was like this diva, like ooh, I exist and that's it. And, and we need was very naive to have just one block that has no idea of the rest of the website.
We needed those blocks to work together. Especially in some more advanced applications and shops.
You need to have different parts of website connected to each other. Interactivity API is actually fixing that thing on the front end so you don't have different blocks from different plugins doing connecting stuff in different ways. And then you have a lot of different JavaScript libraries and jQuery even included. And it's all a mess. Now you have Interactivity API which actually makes blocks aware of other blocks, aware of its surroundings and possible communication with other blocks. And having it as a standard is so welcomed, the same welcome as we had with Create Block Script. So now we finally know how to do stuff and where to do those stuff.
[00:28:11] Speaker A: Yeah, yeah. It's the connectivity, especially to me, that's the part that stands out. The. Yes, I think the, the. The. A good example you'll see is a version of pagination. So if you're querying for, let's say 10 posts and you want to, you want to offer the opportunity for somebody to click and say let me see that, let me see the next 10. Or and the next 10. You would normally do a full page refresh and you'd see the data and you go like, okay, next, and then you do the full page refresh. But if it's only the list that needs to change and the rest of the page stays the same, it doesn't, you know, doesn't need to be a hard refresh, it can be a soft refresh. And the Interactivity API connects the pagination to the loop that actually showed the thing you showed. And now it's a little mini thing that just changes.
The other version is the, you know, the famous logo sliders. You'll see five and you'll see a little arrow to the left or to the right. That's a perfect one for the Interactivity API to say Click on that. I don't need to add any other JavaScript. It's now already available to me and just clicking and I'll get the next logos and whatnot. It's just a super, super sweet, well thought out, thought out API to enrichen the front end, as you said.
Yeah. Is that your favorite of all the new stuff that we've seen? Because I think that's two editions ago that we.
[00:29:44] Speaker B: No, actually my favorite thing is HTML API and here's the thing.
[00:29:51] Speaker A: That's a good one too.
[00:29:52] Speaker B: Yes, here's the thing. A lot of people don't know, they heard about Interactivity API. They maybe read something, maybe play with it, but they have never heard about HTML API and Interactivity API actually exists on top of HTML API. And it wouldn't exist, at least not in this form, if there was not Tag processor.
[00:30:25] Speaker A: Interesting, I did not know that.
[00:30:29] Speaker B: Yeah, there you go.
[00:30:32] Speaker A: Thank you so much for this.
How would you explain what the HTML API does for somebody who's like where do I use it? For what purpose does it serve?
[00:30:47] Speaker B: Well, ultimately HTML API will completely remove the need for JavaScript on the front end at least.
[00:30:57] Speaker A: That's big.
[00:30:58] Speaker B: Yeah, it is big.
Any JavaScript that is going to be needed on the front end will be handled with Interactivity API and all the other stuff, all the makeup that you load JavaScript to change the class dynamically or add attribute or whatever. You are going to be able to do that with HTML API and on PHP side. So that's huge.
[00:31:38] Speaker A: Yeah.
And this is the thing that I like about the topics that you pick because all of them feature functions and functionalities inside of WordPress or, or connected to WordPress that most people just kind of glance over. I heard somebody say HTML API. Yeah, it's wonderful. You can do regex with it. I'm like, no, but, but that's a very limited view. There's a lot more you can do.
What are the are the current 2025 theme? Are they using any of that already?
[00:32:18] Speaker B: HTML API? No, they don't. And HTML API actually has two big classes. One is tag processor that is actually used for modifying attributes inside of HTML tags. So initially it was the idea for creating, it was to be able to use PHP to modify block attributes.
The thing is that Dennis did it so good. It's completely agnostic about any string that you give it. It will process it if it find any kinds of HTML. And that is this class was created I think first and actually it was the goal to be created. There was a Need and a purpose for that. Its bigger sibling HTML processor is actually going to process the whole HTML.
Right now this HTML processor is aware of the closing tag. Tag processor is not aware of that. Tag processor is only aware of the tag and attributes inside it. But HTML processor knows about the end. About the closing tag and in the future any element. Right now any. Yeah, right now development is a bit paused, but it is planned for HTML processor to be able to wrap and unwrap tags, to insert and remove nodes, to read and modify inner HTML. So this is something that you often load a new library just for that and it will also be able to read upwards and around the nodes. So that's very, very powerful. But right now it's not still production ready, it's not optimized.
TAG processor is optimized. You can use it in production. We did it in production like two years ago, exactly two years ago. And we actually waited for new WordPress release to have it. I was doing the documentation for that release so I knew it's going to happen and we tested it, it was working perfectly and we postponed the deployment of that feature actually of the fix that we used HTML tag processor for. We postponed to wait just to get new WordPress version and that was the reason why we updated the website to the latest WordPress version.
[00:35:32] Speaker A: Ah, okay, okay.
So when you say it's not ready, ready.
The HTML wrapper class.
So that's. We have the. This week we had the release candidate of 6, 8, the first release candidate. It's still not in there. So we have to wait for six, nine. Is that.
[00:35:57] Speaker B: Yeah, yeah, I saw that there is a significant performance improvements done for interactivity API but HTML processor is still not there. It needs more work.
[00:36:16] Speaker A: That's a shame.
[00:36:17] Speaker B: Yeah, it is because it's very fun API to just check and play with it and when you realize how much of JavaScript it removes from your website.
[00:36:32] Speaker A: I saw somebody say when this library was introduced, why didn't they just include vanilla js? Because there's stuff in there that very efficiently handles, I would even say more elegantly handles some JavaScript functionality.
And I was like, well you know, I'm pretty sure they were, were aware of it. And I, I didn't at the time, didn't really know the answer. Started looking into it. I go no, there's, there's a little bit more going on. You maybe just want to read through the classes and see what it does because yeah, it's a little more extensive. And then you're like ah, okay, okay. Yeah, yeah, yeah.
Would you, would you agree that a lot of this, these new tools that we have to our availability that, and I'm asking this because I know you, you sit on the documentation chair a lot.
Would you agree that we're not being as educated about it before, during and in all availability as we potentially should?
Because I'll give it an extra. I'll give it some extra.
A lot of developers I talk to just don't have a clue of the new stuff being added. They just don't know. And they go like, yeah, I mean, I kind of looked at the about page when I updated WordPress, but it's fine.
I'm going to do what I always do. I'll be fine.
[00:38:00] Speaker B: Yeah. Well, the thing is, when Gutenberg came into core, we had a lot of problems with documentation.
And that problem existed for years. We couldn't catch up and a lot of developers couldn't learn how to, how to understand Gutenberg. And so they, they went back to what they usually did, you know, classic editor and classic themes and just turn off Gutenberg. And it lasted for long enough that they came to the point to see that Gutenberg is not going away. So they will have to switch.
Yeah, they will have to switch. But now they understand that too much time has passed and there's too much to learn and there is this fear that you will never catch up. And this particular problem created distrust in WordPress documentation.
[00:39:15] Speaker A: Yeah, I believe that.
[00:39:16] Speaker B: And distrust in whatever is published documentation might not be up to date, but everything that is happening new in release, you can find it in dev notes. And sometimes that is all you need because DevNote usually has example how to use this new functionality, at least one basic example how to use it. But here's the thing, because we don't trust documentation anymore, we don't even look at it. But interactivity, API and HTML API have magnificent documentation. So many things explained. Like if you just read it, you would perfectly understand it. Yeah.
[00:40:09] Speaker A: Would you happen to know who, who would be kind of responsible for that? Any, any idea?
[00:40:15] Speaker B: No. Well, people who actually wrote functionality, they, they wrote documentation and.
[00:40:22] Speaker A: Oh, for real?
[00:40:22] Speaker B: They. Yes, yes, they did, exactly. They did amazing job.
[00:40:31] Speaker A: Quite unique.
[00:40:32] Speaker B: Yeah. And they did amazing job in explaining that the new functionality, giving examples and even explaining where the idea came from and what is planned. And you can find roadmaps and you can find showcases and examples that you can learn from. It's amazing, really. But nobody's going there, nobody's reading that because we don't trust documentation anymore.
[00:41:02] Speaker A: I Mean, I get why that is because for the longest time we just didn't have like, if you go to codex.WordPress.org there's some stuff still listed there that is not available on developer.WordPress.org and it's kind of sad to see what our previous state of documentation was. I mean, there was stuff, but you just didn't cover any of the thoughts behind it. Reasoning history deprecated, now go there. You know, that sort of stuff. If you now go to developer.WordPress.org, you are greeted with a wealth of information and examples and all that. So a lot has changed. But I get the hesitance of like, you know, she's not going to be there. I'll figure it out myself. And if I can't figure it out myself, I'm going to be annoyed because it's not exactly going where I expected to do. Or that's usually because you don't understand the philosophy or the purpose or the next goal, so to say.
In my newsletters, whenever there are dev notes, explainers, all that sort of stuff, I don't have to force myself, but I find myself like, I need to make sure that this is front and center. People need to click this and I see them click on them.
And I know a fair amount of my subscribers are developers or developer related.
[00:42:27] Speaker B: I am your subscriber.
[00:42:31] Speaker A: You're wonderful.
But every single time, I hope that more people click on it because it's right there, people, your way to build smarter. It's right there.
Yeah, it's good to see that things are changing.
Let's keep that positive specifically. But I get the frustration. What I never understood though is the, the reluctance to try the block editor. Like people still diligently saying, no, no, no, I. First thing I do in WordPress installation is install the classic editor. I go like, yeah, you're missing the point. Yeah, but it's difficult to use. No, it's not. My mom uses it, my dad uses it. They're not young. They're. They are archaic in terms of Internet. They're in their 70s.
My sisterhood knows zero about any technical application.
She's a psychologist. I can just put it in front of her and tell her three, three lines of this is what you do. That's how you do that. And there you go. They, they just do the thing like, I don't need to explain it more than that. Bare minimum. No way. The block editor is the difficult part. You're the difficult part.
[00:43:45] Speaker B: Yeah.
[00:43:45] Speaker A: In my opinion. What do you Think of that.
[00:43:49] Speaker B: I think there's a lot of fear and that fear comes from not knowing. I mean it's whenever, not just in this business, not just in WordPress and development everywhere in life, when there is a fear of something, there is usually not informed enough. And what, what we fear, it's usually that we are not going to be good at it and that it's not going to be that somehow we are not fit for this new thing.
And that's the base of all of that. And I mean if you're, if you tried Gutenberg in WordPress 5.0, you said this sucks and left. Yeah, it is limiting, but it came a long, long way since then.
So if you didn't try it again and you call yourself developer, I'm sorry, but I have to question that. Because if you are a developer, you have to be ready for new things. Not every year, but new things every week, every day.
[00:45:21] Speaker A: Oh yeah, yeah, yeah, yeah, yeah.
[00:45:24] Speaker B: And if you're not ready for that, then maybe consider different career.
[00:45:33] Speaker A: That's a, that's a very black and white interpretation and I happen to agree with you. I've often said if it wasn't because my line of work basically is entirely reinvented six months in, if that wasn't the case, I'd be bored out of my mind. I mean I was bored at, bored at all the jobs that I had before this.
Just because it just keeps changing and it's not like delete, start again. No, you build.
[00:46:00] Speaker B: Yeah, yeah, you know, you build. Yeah, yeah, it expands.
[00:46:06] Speaker A: Would you agree that if you're starting now, jumping in now, would you have a benefit because you don't have to learn the antiquities of PHP4 or 5.
Why did we skip 6, 7?
And you can just jump in modern PHP and modern JavaScript and certainly modern APIs inside of WordPress. Do you think that's a benefit or a disadvantage?
[00:46:39] Speaker B: I think someone jumping in now, not knowing everything that happened can misjudge some things. And not knowing historically how it and why it came to this point, it could be misunderstood and possibly used in a wrong way because you misunderstanding on the other side.
It's good to have everything modern. You don't have to figure out a lot of things that we had to figure out 10 years ago and now we don't have to think about that. But it's difficult not to think about that because you are used to thinking about that all the time. And now react just handles that and preact just handles that. And I'm like, hold on I need to have control over that so it's easier for that side. On the other hand, which would be the third hand right now, is when you start.
I started learning about PHP in 2008 and basically everything that was written about any web development at that time was relevant. I could benefit from reading it and learning it. It was only HTML and PHP and a little bit of JavaScript. And then a lot of frameworks started coming up and you see JavaScript library and if you don't know enough, you might think, okay, I saw that in PHP websites there is JavaScript, so I should learn this. And you spend months on learning something you will never need because it's standalone JavaScript library that doesn't need PHP or whatever. So I think today you have a lot of noise and it's very difficult to decide where to put your focus, where to put your energy.
And if you are in position that you don't have a lot of free time, you cannot afford wasting 2, 3 months of learning something that you're never gonna need then, then you have to be very smart and not just about deciding which library or which language, but also decide the place from where you will read something because there's a lot of, you know, bullshit there. I don't know if that's the word I can say.
[00:49:38] Speaker A: Yeah, you can say it.
[00:49:41] Speaker B: There's a lot of blogs that don't even have a date when thing is published. Is that up to date? Is that relevant? Was that even true at one point?
There's a lot of things that you have to consider today if you don't know exactly what you're looking for.
[00:50:04] Speaker A: Yeah, and with AI it's even become more difficult. I've seen articles published on, on, on sites from developers that are just.
There's just no truth.
[00:50:19] Speaker B: There's a semblance of a truth, but.
[00:50:22] Speaker A: There'S just, it's not factual. But they write it because they're intending to have something out there. And I go, would you at least please fact check this here and have a working code, have this, have it somewhere so we can, you know, check that first when you say this.
I would imagine if you're jumping in now, like finding out who are my trusted sources. That's a difficult task.
[00:50:47] Speaker B: Yes, yes, definitely.
[00:50:51] Speaker A: I'd like to think they, after this conversation, see you as a trusted source.
[00:50:57] Speaker B: Oh well, I would like to think that too.
[00:51:02] Speaker A: I know you and I are not in the habit of complimenting each other. It's usually the self deprecating humor which.
[00:51:09] Speaker B: Yes, yes, but I think.
[00:51:12] Speaker A: I think you deserve this compliment and I want to thank you for this conversation. I think it was quite, quite a few topics that are well worth anyone's time and investment to look into deeper, not just the libraries and the APIs that we mentioned, but just the general willingness to learn and better yourself. It's a topic that's very dear to my own philosophy. So thank you so much.
[00:51:42] Speaker B: Thank you for having me.