 Next talk will be by Kristin Sarcher and she'll be talking about how to fight our own demons and how to deal with all of the problems that we have in world press all at once. Thanks very much. Let's see. How's this? How's that for sound? Okay, good. I'd just like to say that the first person to correctly guess the number of AI generated images in this presentation at the end will win this fish. So who is this person you're looking at? My name's Kirsten Sarcher. I've been working on the web since there was a web. I've got about 25 years of experience and been working in WordPress for about 10 of those years. I call myself a front end developer, but I also like doing a lot of other things too. I really enjoy professional photo shoots. This is not really going to be a technical talk. I'm not going to show you any code. This is more about the mindset and the approach that has helped me for the last few decades. And if you're running into the same problems again and again, or if you're new to this and you're running into the new problems for the first time, it might help you. So this is going to be more of an advice column. I'll go through some of the scenarios and approaches that I keep in mind. And once we get through all that, then we can kind of make this more of a conversation. So you're part of a team setting up a new WordPress site for your business or your art or your dream. Maybe you're the client, maybe you're the developer or the designer, maybe you're tackling the whole thing all on your own. You've got all these great ideas and WordPress seems like a terrific way to bring them all to life. Maybe your site is already up and running, maybe it's still in progress. But then, drama, something has gone horribly wrong. This one is really obviously AI. Count the fingers, count the noses. So here's a selection of some of the more common demons that you might find yourself battling. The site is down altogether. You're getting a 500 error, you're getting some sort of critical error, you're getting a message saying Chrome can't find your domain. It's just gone. Your site is just doing weird things. Your code is buggy, something is glitchy, something isn't working. Your site has been hacked or defaced. The site's up and it's running, but it's just slow. Your site is running fine, but nobody's coming to it and the traffic is kind of disappointing. Your client isn't very happy with you or your boss. Your colleague is really getting on your nerves and very difficult to work with or maybe a contractor, someone that you have working with or for you. So what are some of the things that we're going to do first in all of these circumstances? We're going to stay calm. That's something we'll come back to a bit later. You're going to retrace your steps, understand the context of what is happening. You're going to look for the root of your conflict and then troubleshoot. So I'm going to go through each of these. So let's stay calm. Everything goes more smoothly when you're not freaking out and that will help the people around you also not freak out. So let's first deal with the feelings of anxiety or panic when there is something terribly wrong going on on your site. Whether you're dealing with a minor CSS glitch that is really hard to track down, a site that's completely broken and you've got people yelling at you or maybe a confrontation with a colleague, the same thing is going to apply. So remember that this isn't personal. It's not happening to you. It's just a thing that is happening. And once you can kind of a little bit dissociate yourself and your ideas from the problem that you're having, detach yourself a little, it gets a bit easier to deal with. So often we start generating these stories about how terrible this is and I'm never going to figure this out. I'm no good at this. Is it going to ruin your career or that that idiot is totally incompetent? Now they've broken it and I never should have hired them. Everyone is going to hate you or them. You've made a terrible mistake. So this is a thing that your brain is doing in response to stress signals. It doesn't necessarily all mean that it's true. Your brain is trying to be helpful, trying to give you what it thinks is going to get advice that will get you out of this situation, but just kind of look at what your brain is doing and go, okay, thank you. That's, I see what you're trying to do. That's not actually helping right now and bring your attention back to the problem at hand. So now that you're calm enough to think clearly, you can start looking into the issue. Sometimes it's really obvious what caused a problem. Like you just updated your plugins and suddenly you have no sight. When it's not obvious, you have to retrace your steps, like looking for your lost keys. So when do you last know that it was working? Have you made some changes recently? Did you perhaps update the plugins last week and a problem is only now starting to show up? Could someone else on your team have started making changes? Has something about the environment changed? Like maybe the hosting company did some server updates or maybe your client didn't renew their domain name. There's also the possibility of a hack, in which case you aren't the one who made the changes. And in that case, your job is to find out what changed and how. And you're retracing someone else's steps and hopefully erasing them. So troubleshooting is the process of investigating until you find out the root of your problem. If you're dealing with a WordPress issue, the conflict might be between bits of code or it might be more of a conflict between what it's doing and what you expect it to do. So it's faithfully trying to do what it's being told. You just might not be telling it the right thing. If you're dealing with human conflict, usually that means at least one person has a need that is not being met. So we're going to break this down into smaller, bite-sized pieces. So often we get anxious messages from users or clients that are like, there's an error or the site is down and that on its own is not always all that useful. You need to get complete error messages and the exact behavior that leads to the problem. So does the problem happen on every page of the site? Does it only happen when you do a very certain thing on certain occasions? Narrow it down as much as you possibly can. If someone else is telling you about the problem, make sure that you can also replicate the issue yourself because it's very, very hard to troubleshoot a problem you can't see. As anyone who has ever had a site that worked on 12 computers near you but not on your client's computer will tell you. When the pressure is on, there is a temptation to jump in and just do everything that you think might fix the issue all at once. But if you change too many things, you still won't actually know what the problem is and what you fixed. And it has the effect of introducing new problems as well. If you make five changes and one of them fixed the problem, you might now find out that you have a new problem because one of your other four changes tweaked something unexpected. So, yeah, that can have, you can get more issues coming out of that. I consider restore backup to be one thing that you can change if you're really in a crisis. And you do have backups, right? Because out of everything that I'm saying here today, that might actually be the one takeaway that you definitely need backups. If you're new to coding, you've probably already discovered some of the things that can go wrong. So typos, that evil missing semicolon, everybody gets hung up on a mismatched parenthesis or a missing semicolon once in a while. If you're not running on a live site, make sure that you've got PHP errors turned on so that it'll tell you what line is breaking and you don't have to angst over it forever. Bad logic means that the code is running, but what you think you've asked it to do and what it's actually doing are different. So you might be feeding it the wrong variables, or you might have put a critical statement in the wrong part of the process. So leave yourself breadcrumbs along the way to hone in on where you're going off track. You know, output your variables, see at what point things are changing, see if it's actually getting to the part of the code that you think you're executing. Sometimes you even find yourself working in the wrong file, and you've been trying for an hour to make something work and it isn't working and the problem isn't going away and you know you've got the code right. When you catch yourself doing this, you fix the problem and then you step away from the computer and you go for a nice walk outside for a little while, because you've obviously been staring at your screen too long. So programming languages are written by humans and humans need to be able to describe what's going on. If you're not sure about your logic, look at it and read it out exactly what it's doing line by line, like you're reading a story. This won't help you with any of your syntax and semicolon errors, but it might help your brain trace through what's happening when you actually start reading through it as if you are the computer. You'll see, oh, now I'm actually being told to run this bit of code and I thought I was going over there. So I like to think in pseudo code sometimes for, you know, sometimes before you're writing out a longer piece of code, just sort of jot down how is the logic actually going to work. Don't actually worry about your function calls and whatever it is that you need to do. Just make sure that your brain knows where you are trying to direct the procedures. So getting a little bit more specific about site crises. So your site is down. First, there is that staying calm bit. So our people actually in danger of dying. Probably none of us working on WordPress are running life support systems or power plants. Anybody? No? No? Okay, we got one. All right. Well, are you sure you're not running Drupal? Oh, okay, that actually is kind of like, so this, this, this might not apply to you. Yeah, it's true. That's, that's one thing that bonds us all here together today. So 99% of the time it's actually not going to be life threatening. Your client might think that it's, you know, that the world is in imminent danger because they, you know, might not make sales for the next five minutes while you're trying to figure this out. But this is kind of what comes back to the staying calm bit that the staying calm is going to be also relevant to how you deal with the client. So we'll get into that a little bit too. You need to be familiar with what specific types of problems are most likely to appear at each level. So you've got the themes, you've got the plugins, you've got your server, your hosting, and you've got your domain. So if Chrome is telling you it can't find your site, you don't even need to think about whether it's a theme or a plugin thing. It has nothing to do with it. You know you're looking at the domain, possibly the host. So as you get more experienced with WordPress and get more familiar with what, what is going to pop up where you'll, you'll know how to hone in. And then you can eliminate the suspects. So if you haven't found the culprit immediately, so what can you rule out? Can you prove that it's not the theme or not the plugin? Or if you've narrowed it down to your theme, can you hone in on exactly what bit of code is causing the problem? So if you can't find the answer, find everything that isn't the answer. So you might try deactivating plugins one at a time and seeing if that resolves the issue, commenting out sections of code that you think might be interfering. You can check and see maybe the problem occurs on one page, but not on another. And then you hone in and go, aha, what is different about this page from that one? So what is a plugin conflict in the first place? And a lot of the times too, if you run into a problem with a plugin and you report it to the plugin author or maybe the theme author of the theme that you're using, they will tell you, well, it's probably a conflict with another plugin that you're using and it's not our fault at all. So there can be a lot of different reasons why a plugin might be causing you problems. If it's not immediately obvious, turn off each one at a time and see if the problem disappears. Sometimes you can't do that because the functionality that you need to test is a part of the current plugin. Sometimes a problem won't appear unless you have two particular plugins activated together, so keep an eye out for that. If you're getting a white screen of death and you can't get to the dashboard, you can temporarily turn off a plugin by renaming its folder using SFTP or the command line. So it's kind of like pulling the emergency brake on that thing. Now, if your site is buggy, you've kind of got the same situation, the same approaches. It's maybe just a little less panicky and alarming. You're still going to try to break the problem down into smaller parts until you understand the root of the conflict. So this could be something as simple as a form that won't submit. That can often be a problem with the JavaScript that is running the validation for the form. So where is that JavaScript coming from? Is it coming from your theme or is it coming from a plugin? What message do you get in the JavaScript console in your inspector, which is also one of the most important things that you need is your browser inspector? So can you track it down that way? Just keep honing in on it. So if your site is slow, a lot of the times it's just some kind of temporary issue on the server and if you ignore it, it'll go away. Not always, though. Sometimes you have a really terrible host. I once ported a site I was working on to a separate host because I needed to prove to the client that the website wasn't the problem, that it was their host and it ran two or three times faster on the other server. It could be that you're overwhelming your host with traffic if you're lucky. In either way, that's where you need to start focusing your attention. It could be a particular plugin or a theme that's just hogging a lot of resources and slowing everything down. So once again, you have your plugin culprit and you deactivate until you can hone it down. Does anybody remember this 90s movie, Field of Dreams? Yeah, yeah. So there's this whole thing. And a lot of people have that approach to their website. They're like, okay, I have made my website. And they have no plan whatsoever. And for some people, that doesn't actually matter at all. A lot of the sites that we build are just meant to show that a company exists and has some credibility and is competent. It's more like a business card and maybe they're not actually looking for business online. They just need to show, hey, I exist. So that's fine. But if you are actually trying to actively get traffic, you need to have a plan. If you have no SEO strategy and no marketing plan, you're not going to get results. So then you need to take your troubleshooting steps and start applying that to your marketing strategy with someone who knows how to do that properly, which is not me and is outside of the scope of this discussion. So those are some of the more technical issues that we're likely to run into. Now we can try to apply some of the same principles that we've talked about to dealing with conflict that we're having with other humans. Now the caveat, this doesn't work quite as reliably because unfortunately humans are more complex and nuanced than WordPress sites. So and also sometimes two people just aren't a good fit and you can't just swap them out like you can with plugins, which is frustrating, but that's can be just how it is. And so here are some thoughts on how to make the best of working together. So what were our steps again and how do they apply to dealing with people? So stay calm. Make sure that you are grounded and calm enough to be able to listen and hear what the other person is trying to tell you, as well as being able to convey what you need to tell them in a reasonable manner. If you don't think that you can do that without getting upset, let them know that you're going to need a moment. Find a better time to have the conversation when everybody is in a better headspace. Maybe wait until you're not in the middle of a site being down crisis to talk about how you always do blah, blah, blah, blah. It's not going to help. We tend to react more extremely when we're under stress and it does not help us get through the situation without unpleasant residue. So retrace your steps. It's a little different here. It's more about what is the context? What is happening? What is the setup that has led to this moment? Does it even have anything to do with you? Sometimes a person may be reacting because of a situation that they had in a prior job where the person was irresponsible and did blah, blah, blah. It might not actually be related to you. So try to have an understanding of what the context is and look for the root of your conflict. Don't assume that you know what's going on for them. Understand that they may have a need that isn't being met right now. And think about your own response. What need are you trying to meet? Are you trying to just have some peace in your workplace? Or do you need space to be able to solve a problem without somebody breathing down your neck? Consider what your need is and what the other person's need is and how they may can maybe both be met. And just like in technical troubleshooting, try to understand the situation before you start tinkering with it. If your client is panicking about a problem with the site, let them know you've heard them and you understand how important this is to them. Give them a realistic time frame in which you expect the problem to be resolved and then stick to it. If you guess wrong, just keep updating them so they know you're on the case. So why is your client unhappy? Is it because the site is down or broken? Is it maybe because of your communication, your response time or your style or your availability? Have you been very clear on what you are providing? Maybe they expect you to be doing something that you never thought was part of the agreement. Did you over promise and under deliver? So a lot of this is about setting expectations, which we'll get to in a moment. So maybe you're dealing with a frustrating employee or a contractor. So some things to ask yourself, have you been moving the goalposts? One of the most frustrating situations for anyone building anything is when the parameters keep changing. It's really disheartening to have to redo work that you're proud of or to have to change direction when you thought you had a clear picture. Are you clear on what you're asking for? Make sure that your project has thorough and clear business requirements so the people working on the site know exactly what they're building or you may get unexpected results. Are you listening to what they have to say? If someone is warning you that there are going to be problems, they're not going to meet the deadline, they don't have the skills or the time to do what you're asking. And if you don't take that to heart, you will be surprised when the project doesn't turn out quite right. Keeping track of progress is important. But if you get too involved, you can actually interfere with that progress. So set dates for check-ins in advance and try not to hover. So setting expectations is best done right at the start of the relationship. Let the person know when and how they can expect to hear from you. If you like to block out chunks of focus time while you're working and you can't be reached, let people know that that's a thing that can be happened. Maybe you don't like talking on the phone and but you will answer emails quickly. So let people know that. So a lot of the frustration that happens is just from the expectation that maybe you'll always be available all of the time. And if you let them know upfront, like, no, I need a certain amount of time to just do my work and I don't answer calls during that time, then that's something they're aware of and they can kind of relax knowing that you're on the job. Leave some wiggle room when you're doing quotes in estimating time because if you run into trouble, then you have that little bit of extra buffer space. People will be delighted if you come in under your estimate. They will be thrilled, but they will be upset and angry if you go over it, even if it's the same number of hours. It's all about the perception coming into it of, you know, am I getting what I'm paying for? So be realistic about what you can and can't do. If you think you're likely to run into trouble in a particular part of the work, let people know so they aren't broadsided. If you come back saying you're going to need a few more hours or weeks or have to buy an extra plug-in to make something happen, just make sure that all of those possibilities are laid out upfront so that they're not a shock if if they pop up. Sometimes a person who is upset just needs to know that you heard them and it can be really hard to not immediately jump into explanations and defenses if you're under attack. But if you get it right, you will feel the other person relax or their tone will change. So the first thing is dropping the defenses and getting to the root of the matter. So that might look like, I'm hearing that you're really, really worried about the site loading slowly. So at this point you're not, you're not just kind of blamming out explanations for well this and this and this has to happen and then this and it's your server and it's like your host just like oh, yeah, yeah, no, I can understand that's a concern. Are you getting frustrated that the development site isn't looking exactly like the designs yet? Yeah, okay. So then they know that you've heard their concerns and you're ready to have a conversation and take them seriously. So maybe you're the one who's angry or concerned. Take a collaborative tone, putting things in terms of we instead of you and I helps reduce the sense of confrontation and it brings the focus back to the goal that we have in common. So you're bringing this back to how is the situation going to impact the project or perhaps the budget of the project. Usually in nonviolent communication we learn ways of describing our emotional state to the person we're having conflict with but in a work scenario the person you're dealing with may or may not care and getting too much into your emotions may not be appropriate. So you want to maybe bring it back to the project again. I completely understand that seeing another round of revisions would be really helpful but in order to fit that in we were we would have to delay the launch and I know that launching on time is really important to you. If you bring up a problem but you don't make a request or a suggestion that leaves the other person hanging and it looks a bit more like a confrontation that they have to resolve. If you make a constructive suggestion it's a good way to show them that you're interested in finding a solution. So maybe you're having a difficult discussion but if you can suggest some steps that you can make towards changing the situation then that kind of shows a certain goodwill. Be prepared to hear and know and to adapt your own plan because if what you're asking for isn't optional it's not a request it's an ultimatum. Ultimatums can work to get the job done if that's all that you want but they can also seriously damage your relationship with the other person because you've just taken away their sense of agency and autonomy. So maybe that sounds something like can we agree on a time for a weekly meeting to check in on the site's progress. I could say a whole lot more about the communication side of things but if you want to look into it look into nonviolent communication by Marshall Rosenberg it's a good tool to have in your toolkit for all things in life and just ways of approaching conflict, approaching difficulties and negotiations, mediations in a way that is a bit more satisfying for everyone involved. Another book that I really, really like and a fellow I've done a couple of courses with is the book is Say What You Mean by Orin J. Sofer. There's also this link that I kind of liked for nonviolent communication in the workplace. So we got tinyurl.com slash NVCWP and it just breaks it down as a little summary but things that are a bit more specific to work whereas a lot of NVC is kind of more personal relationships. What I'd like to do at this point is turn things into more of a conversation. I'm thinking that at least a few of you might be thinking about something that you're stuck on or some issue you keep running into that you could use a little help with. Maybe between the bunch of us here we can come up with some insights into it and get you unstuck. So does anybody have sort of questions or nagging doubts or scenarios that we can help with here? Wait. Da, da, da, da, da. Can we get us on that sort of line for YouTube? The question, if you can't hear it, was on upgrading to the latest PHP versions and what's the best approach to that. Staging sites. Do you have any things set up where you can test things out on a staging site? Yeah, yeah. Yeah, I'm doing that currently but I've only just searched for all. And when I need to update it. Oh, great. Oh, so it works when you do it on the staging or not? It's not on the staging. Oh, OK, OK. So it's not on the staging, sure. Great. So it works on the staging or it breaks on? No. It doesn't work on staging. It's a little better. Great. That's great because the worst thing is when it works on staging and then you do it on the production site and it breaks. At least you have a consistent problem. So you're off to a good start. So turning on your PHP errors is going to be the biggest thing or looking in your PHP error log because that will tell you exactly what what line of what plug-in or theme made it break. So I know my theme or not data today almost so it has to be in order. Do you update it or try to fix it or just create more? It very much depends on the theme. Is it like a commercial theme? It's going to be the password. Is that a weird thing? Yeah, yeah. So that could go one of two ways. It could be that there's one line in it and you fix the one line and that's the only problem that's in it. Or it could be that it's a systemic problem through the whole thing. So that would be breaking it down to the root of the problem. You've got some dated code. I would start off, find that first line of where you're getting an error, find out what that is, do a little research. Because the other great thing is that any problem that you are having, 12,000 other people are also having the same problem. So pretty much if you can be really specific about the error that you're googling or search on deprecated PHP this function, whatever the thing is that you're finding, you will find somebody who's telling you exactly how to swap that out. And if you're lucky, maybe you only have to do it once or twice in the whole thing. And if you're not lucky, you're going to also learn a lot more PHP in the process. So it may totally be salvageable. But it could take some hours of digging. It depends how committed you are to this theme. It might be super easy. I would definitely say, have a look at it. It might actually not be all that bad. Hi. Hi, I'm just going to say this. Oh, hang on. In recording, if we don't speak in a microphone, he's not going to do that in your home. He's not going to say one. Something that might help is switching to one of the newer themes like Astra or Genesis and then seeing if you can recreate the theme. If your old custom theme was well built, then they're not going to have functional code built into it. And the more modern themes often will let you get all the benefits of those older custom themes. And if nothing else, if it doesn't work, you can always go back. It's the cool thing about WordPress themes. But try that. That's one of the things that I do with clients who run into older broken custom themes. And it's one of the reasons why I'm so fond of custom do-it- yourself themes. What else? What else have we got? Let's solve all the problems. All of them. Oh, OK. You got a comment. And a problem. Next time, say, add clear the caches. Oh, yeah, yeah, yeah. And check for runaway cron jobs. Those are the two things that cron jobs can run away and slow down your site. Oh, yeah, yeah, yeah, yeah. That's right. And clearing the cache, it's like if it looks like hair, very often if you clear it, and you run an update and it looks bad, very often it's because maybe the CSS isn't matching the new update. So if you clear the cache, then it will all get refreshed. Yeah, that does happen. And sometimes it's your browser cache, and sometimes it's the site cache. And the cron jobs are sort of specific to slowness on sites. And it's, yeah, it's certain. It's a little edge casey, but it does happen, yeah. But that's also something that if you end up talking to your hosting company, they will kind of be like, you've got this cron job that's doing this thing, and we had to shut it down because blah, blah, blah. So you'll still, for that one, you go to your host and they will scold you gently. All right, what else we got? Nobody has any problems? Why are you here? So I have a small but sort of recurring problem of clients, especially through agencies, that refuse to do upgrades. I have some on version four. WordPress 4.7 kind of thing. So any suggestions for anybody on how to encourage, you know? Yeah. I mean, I have found that the sheer number of vulnerabilities out there is so intimidating that so have you talked to them about like the likelihood of getting hacked? Because that usually scares the bejesus out of people. We've talked to them, explained to them the potential risks. And this one particular case is very odd, where they have almost like a self-hosted server. And they just, I don't even have access to it, to the back end properly, like the files. So somebody else is doing that. We're just more doing the marketing and the content and pages. So when they want something to happen on a friend, we do it. But at the same time, they're not upgrading. And they're, I think, sort of tech people, whoever they're working with, aren't also doing it. So this is a very kind of extreme case. But yeah, we've talked to them and other people, just in general, some of them are a little bit hesitant to, you know, let's say, get into a place where we're managing their site rather than just doing content. Oh, yeah, yeah, yeah. OK. Yeah. So maybe they're seeing you as the content people rather than somebody who can actually give technical advice? Maybe. But I find that they just we've presented, actually, a few times to numerous clients and here, you know, we'll do all these things, you know, upgrading and whatnot. And they just sort of push us off maybe because they're paying the agencies to do marketing. And so I think it should all be one package of deal that may be part of the problem. Yeah, I can understand that they might see it as well. Our technical guys should be doing that. And it is really hard to come into a situation when you see a site where somebody has been horribly neglectful and you don't want to trash their tech people. But also you kind of need to let the client know that there is actually a liability here that their site is very much at risk. Yeah, I mean, I usually, there are there are going to be some cases where somebody is just going to have their mindset and that's how it's going to be. And they've budgeted it. And their budget is all going to this other guy who's not doing the work. And but if you if you've written all this down, at least when their site does fail and it will, you can be you might be the person that they reach out to. It's sort of like that, you know, Cassandra, you're predicting the fate. Nobody's listening to you. But at some point when the thing actually happens, then they'll realize that you were the person that who actually had the knowledge and the expertise. And maybe they come back to you and treat you with a bit more respect for it too. I would also just make it clear that, you know, they're even that you have your own concerns about working in the site due to its age and instability and you know, kind of that you don't want to be liable for things that are happening in this site that are due to that. So yeah, I guess all you can kind of do is lay it out for them. And it's going to be there decision and they may make a bad decision. I mean, I usually find at the start of working on a project with someone, but I mean, I'm coming from it more of the development side. Like I do some design, but I do bits of everything. And so because I have the development background, if I say once your site is launched, we're going to need to talk about a maintenance plan for, you know, security and stability purposes. If you're up for it, you could take this on yourself or you can have me do it. And most of the time, they'll say, oh, I'd rather you do it because they are not technical people. So yeah, I guess it's probably harder coming at it from the content perspective because people aren't expecting you to have that expertise. So yeah, I mean, I think you can just put it out there and ultimately that decision is up to them and just try not to let yourself be held responsible and be available for help when they will eventually need it. Hello. OK, so my question is, if you're working with a client in the beginning, you agree that they're going to provide all the content and they don't. You sit on this website for two years or whatever. This is one word press problem I cancel. No, I mean, that is actually nearly every single site that I've worked on. And I will have a talk with a client about that right at the beginning that the content will take you longer to work on than you think it will. And if we are going to hit these deadlines, then, I mean, having a very clear schedule and the dates that their receivables are due is really important so that when they blow through their deadlines, you can adjust the launch accordingly. So having in your contract, that can happen. If there are any delays on the client side, then the launch date will be adjusted accordingly. So you can say, this is what you agreed to. I also tend to have a clause in the contract that says if the work, if there is nothing received for a certain amount of time, it could be a month or two months or three months, whatever you feel comfortable with, the contract is basically considered closed and completed and a new contract is needed to start it up again. I've also known scenarios where there's sort of a kind of a holding charge that, OK, for every month that you're delaying, you've now thrown out our project timeline and all the other work that we're trying to do. So if you want your project to stay in the queue, you need to pay this fee. Those are difficult conversations to have with a client, especially if they're struggling to get their content done and then you tell them that now I'm going to charge you more money for not doing your share of the work. So that is a delicate conversation to have. But yeah, if you find, you know, reminding them, you know, maybe two days before the deadline, OK, we're going to need your, you know, all your blog posts, your portfolio pieces on this Tuesday. Let me know how you're doing with that. If you want me to have a look at it, you can also get something. You know, if you have the sort of client that is always kind of tweaking the little things a little bit, you know, they've got content, but they're just not quite happy with it. You point out to them that, well, have something that we can launch with and you can continue to tweak after the launch. So at least, you know, you kind of set a stake in the ground for we'll get super close. You don't have to make a big announcement about it until you're happy with it. But but at least we'll get it up and running. And from then on, you can change whatever you want. That's why we use WordPress so that you can do it and have total control. That's another good selling point for WordPress. So those are those are the ways that I go about it. It's I don't I don't know if I've ever more than once or twice had a client who didn't regularly miss deadlines, though. So just prepare for it, especially also in your own personal budgeting and so on. Yeah, just those are all really fantastic points. I would even add a couple more things. One, I tell clients you've got if you don't hear from you content wise for six months, there's a minimum thousand dollar kind of like penalty fee just for administration, just for starting up your project again. Also, sometimes when I see that clients are too busy, I say we can take care of your content for you, drop like an addendum to the contract and say, look for like a couple thousand, a few thousand more will take care of that for you. And a lot of clients will say, you know what, I'll just pay this because three thousand dollars to save me a huge headache that I can never and I can never get to this work. They'll pay it. So you're actually earning more and you can, you know, close the contract, you know, finish the project faster. Yeah, that's a that's a good suggestion to thank you for the talk and the resources and the breaking down all the steps. I love the two resources. Well, I haven't looked at the third one yet, but the first two are great. I'm wondering if you have any specific tips for managing a toxic contractor who isn't under your contract so that they're contracted directly with the client. So you're like, you have to work with them. You can't really like, slide them off. You can't cut them off. You just, you just have to. Yeah, yeah, yeah. So in what way are they being toxic? I don't want to get into super specific things, but it's some words that have been thrown around where emotionally abusive, very accusatory, inflammatory, both in person and in like leaving comments for other fellow contractors. Just kind of generally, general comments are like, yeah, difficult to be around. And, you know, very skilled at what they do, but difficult, very difficult to work with. Yeah, yeah, that is, that is, that is tricky because you can't sort of call it back to them, you know, jeopardizing the project if they're actually doing a good job on the project. And I'm guessing that they're probably not respecting your time and abilities and are being dismissive and does... Called everyone else incompetent in some way or form, yeah. This is actually exactly the sort of stuff that that NVC material is for, is Rosenberg has this great way of, he's got these two puppets and one is a giraffe and the other is a jackal. And so the giraffe is kind of the person talking in the sort of reasonable NVC type of thing and then the jackal is the one. Yeah, well, you always blah, blah, blah, blah, blah. And kind of has these interactions where when you're dealing with somebody who just has no interest in being reasonable, there is still something going on for that person and something that they need, however obnoxious and abusive it may be. They may not be feeling that their abilities are being respected. I don't, you know, and I mean, it's entirely possible that they are, but that's just what their impression is. They may have some frustration about their circumstances that again has nothing to do with you. And it's not necessarily your problem to fix it or resolve it that actually is more the issue of whoever it is that has hired both of you to provide that work environment. So, I mean, one of the things that I would suggest to do is to talk to, you know, like has, have these concerns been raised to one level up to, you know, you're finding it difficult to work because this person is making your environment tense and unpleasant. Yes. So the client, and I quote this, is reluctant to part ways with this particular consultant for, you know, their own reasons, but. It's, sorry, I couldn't quite catch that. The client is reluctant to part ways with this contractor. Okay. Yeah. For unspecified reasons. Oh, so wait, so they've parted ways with them? They have not. Oh, they have not, okay. Yeah. But they, they aren't willing to. They are, yeah, exactly. Okay, but they're also not willing to talk to them and say, you know, things are actually, you're making things kind of difficult for people. Yeah, that's right. Okay. Yeah. Yeah. I mean, you can, you can do your best to sort of minimize the interactions. You can do your best to kind of understand what is going on for them. And it might be just something, sometimes it's something really simple like acknowledging their frustration because it's obviously this guy is pissed off and frustrated and annoyed. And it doesn't mean it's justified. It doesn't mean he's right. But sometimes just being like, God, man, I know it must be really hard for you sometimes working with us, with the rest of us. Sometimes then they realize, oh, God, I guess I kind of pushed that a little far, huh? And sometimes they'll back down a little bit like, oh, they've just been seen. So sometimes that's one thing that you can do is just see him, respond to him where he's at. Not in an aggressive way. Not in a battling kind of way. But like, God, man, yeah, like, geez, I don't even know how you put up with the rest of us where you must be used to working with like the cream of the crop. Like play it up a little bit and sort of just see how he responds to that because he might actually kind of, oh, we might do a little double take and back down. I don't know, it's something to try, try something you haven't tried before. I'm getting little wrap up signals and I'm also realizing that I haven't yet given away the fish. So, can I hear numbers? This is how many of the images were generated by AI. Yeah, who said 10? You win the fish. This amazing fish is brought to you by AliExpress. It unzips into a pencil case in which the inside is also fish. All right, well, thank you guys very much. This was a lot of fun.