As the primaries of the all-ruling all-progressive Congress APC set to be held in a few days, the party appears divided on its choice of the party's flag bearer. And an aspirant of the African Democratic Congress ADC for the Lagos State humanitarian elections joins us to discuss his plans for the state. Now, this is Plus Politics. I am Mary Anacor. Now, there are strong indications that the national officials are divided over a plan by President Mohammed of Bahari to pick his perfect candidate for the presidential ticket in the party. Now, the APC National Vice-Chairman Northwest Malam Salyu Lukman in an open letter to President Bahari warned that picking a successor would be costly and risky for the president and the party. Now, according to him, a major disadvantage of the succession arrangements with governors choosing their successors is that it negatively affects the relationship between the successor and the predecessor. Also, a few days from a meeting of the all-progressive Congress's governors meeting on Tuesday night indicated that the governors could not agree on a consensus and the fact that the president should pick the party's presidential candidate. Now, joining us to discuss this are Biyadu Shomi and Adiwala Abigipad and Adiwala Justice, both are political analysts. Thank you so much, gentlemen, for joining us. Gentlemen, can you hear me? Great, great, great. Good evening.  A lot of people have made their, you know, deductions from the president's statement as to picking a successor. Now, for the average person, when you hear about picking a successor, what plays in your head is, let's take, for example, the Queen of England and who she anoints to take over from her, which would automatically be Prince Charles. But then we are in a democratic process and so the average person is wondering why would the president be talking about a successor in a democracy, especially at a time like this when the party seems to be ridden with that responsibility of picking someone who would be right and right for that ticket. Mr. Showme, can you hear me? Yes, I can hear you. Go ahead. Now, in the battle, in the quest for succession within the different, the major political parties, particularly the PDP and APC, we are seeing Attiku above and beyond a match, you know, as through a process of nomination and elections within the PDP. Now, back to the ruling party, APC, we have seen so many moves, either in the truncating indirect primaries, through the delegates, the auto delegates, elected, or, you know, in favor of consensus. In reality, there is nothing against the law when you talk about consensus, because it's been shown in the electoral act. Also in the APC constitution, consensus is provided. But when you take account of what Mr. President is saying, Mr. President is talking about selection, not a consensus candidate. That is, somebody who he prefers, you know, to rule the country, they are allowed to take and meet the person, and the person adopted as the candidate. That is totally different. Where all the aspirants will agree on a particular individual, and then they will back that individual. Not for Mr. President to pick that individual, that is selection. It is not consensus. That is not in line with the spirit of the consensus I remember in the APC constitution, or as envisaged by the electoral act. So therefore, what Mr. President is seeking to do to selection is not only anti-democracy. It undermines, you know, internal party democracy, and it is a mark of a leadership suffering from democratic deficit. So there's no way how in today's democracy a president can unpick his own successor and ask his party to abandon, delegate, no voting, and just embrace the person. It's a mark of some elements, and a reminder of the history of leadership of Mr. President, which is the territorial military rule. That cannot be done in a democracy. Members of the political party should be allowed to freely choose who should represent the country, who they will present to represent the country in the presidential race. So any attempt aimed at undermining the process through the governance of any other group of people agreeing to a selection arrangement is not only illegal, it is ultra biased. It can never be right, and it undermines internal party democracy. Let me come to you, Adelaide Justice. There are many who have made the analogy that, you know, former president, at some point, was able also to pick his predecessor, rather to pick his successor, I beg your pardon, and that why would he be wrong if President Buhari is also saying, well, this is who I want to succeed me. Also, forget it, I mean, they're also saying that this is something that has been happening, even at the state's level, where governors impose their candidates on the party and then the party plays along. So why should we be criticizing, Mr. President, if this has been the modus operandi? The modus operandi? Hello, thank you very much. Are we together?  Hello. Yes, I can hear you. I'm just kidding. Mr. Justice, I think that we're having a connection problem with you, so I'm just, I'm going to let you go and we'll try to see if we can get you on another line so that you can be clearer for us. But let me come back to you, Mr. Showme, I'm tossing that question to you because this is a follow-up to what you just said. There are those who are on the other divide supporting Mr. President, and like you also mentioned, it's been happening in states, nobody has criticized that. Why should we be criticizing Mr. President? And if, for example, the party at some point had come together and said, well, Mr. President, we want you to be our flag bearer, even though it was not an all-out consensus. But this is what happened in his time for him to have emerged as the flag bearer of the All Progressive Congress. Now, people are saying, well, give us a chance to do the same and pick somebody and say, well, this is who we want, and that will be by a delegate system. But what is really wrong with those who are supporting Mr. President and saying, well, let him pick his own. Abbas and Jordan did the same thing. Well, you see, the fact that somebody's tool is not a justification for another person to go and see. Those who are hugging that Abbas ago did the same thing. But I bring it in, Jordan and Jordan were, Jordan and Jordan were talking. Forget the facts of each day. They forget the fact that democracy was at in and post-transition. We are expected to go back in history, in times, failing to learn anything from what happened there. When Abbas ago did that, what eventually happened to the regime that succeeded? You know, Jordan Agua was the same man. He was brought in. Is that a succession plan? Is that what we want to start a monetary plan? Not only that, they should go to the states. And then, apart from legal states, we have been able to have a smooth succession plan. There is no other state in the country where the incumbent governor tried to influence or impose the success of. And we never had peace. No. Go and check what happened in Anambra State, between Obie and William Piavo. Go to, mostly, between Oddy, Uzokalu and Teodere Uzokalu. Teodere Uzokalu was in prison. He was chief of staff. Oddy Kalu brought him, make sure he won from prison. What happened? They fell apart. The same story is everywhere. We remember the last election in Ogun State. Abbas soon, the governor, Abbas soon backed a particular candidate who, eventually, you know, did not make it. Attended by governors to impose successors as failed in many states. And succeeded in many states. By the end of the day, we've never seen any peace. The John DeGustave, which is the only example you have in your country. And when it comes to a country as bigger as that, we have over 200 million people. How can one person decide who would be the candidate of a political party that post that it is the biggest in Africa, they're talking about over 50 million memberships. And how can one person be allowed to do that? What Ruari is talking about is selection. That is totally unacceptable. It is undemocratic. What we are talking about is if they want to do concerns they must get all the aspirants to act free. All of them. Otherwise, it will be illegal. So there's no room for what Mr. President is trying to do, trying to succeed himself. It reminds me of what Abbas tried to do with the two political parties, NLC and SDP, one to the left, one to the right, and wanting to transport himself. Why would the serving president want to impose his own process? What is he hiding? What is the problem about it? Why can't the delegates be allowed to choose? In fact, if you go back to 2000 and put in what value Mr. President is, he contested the families against Attiku and Pupaka within the APC. And that was IEMI. So why can't we build on it? Why do we want to go back in time to the infancy stage when Oba secured it? Why can't we build on what they did in 2015 when they took an internal party democracy and if we can't deepen it, sustain it at that level rather than going back to an era of imposition? And that is what I think Mr. President needs to be mindful of. You've asked very interesting questions, but I think we have Mr. Justice back on the phone. Mr. Adewale Johnson, I'm sure you can hear me. So let me quickly go to what Mr. President said, and I'd like to quote him. The President explained the qualities of his successor, the qualities that his successor must possess, and also went ahead to sort the backing of APC governors in picking the party's presidential tickets. I quote, I wish to solicit reciprocity and support of the governors and other stakeholders in picking my successor who would fly the flag of the party for elections into the office of the President of the Federal Republic of Nigeria, the President urged the governors. Now, this is not the first time Mr. President is talking about qualities that people who would work with him should possess. Remember, it took the President more than six months to pick his ministers at the beginning of his government after the elections in 2015 and he kept saying that these people must possess certain qualities, but then looking at those ministers down the line, a few of which the EFCC is after right now as we speak, should we really be taking these lines that Mr. President has put down about the qualities of his successor and why he should be allowed to pick his successor and that the governors should support him? Should it be anything to go by? Should it be something that we should hold on to? Or should it be Jettison, just as Luke Mann has admonished the party? Thank you very much. If I may share in the sympathy of Mr. Biogon Shouwumi and so many other Nigerians on this issue of choosing a successor, and particularly the interpretation of what Mr. President has said, seeking the support of governor, EFCC governors and other major stakeholders in onboarding a successor. I want Nigerians to be appreciative of something. The president of the country is a more or less democratized military, former military man, because like Mr. Biogon Shouwumi has said, this is not the first time Nigerians are hearing this kind of an echo about onboarding a successor. But the fact remains that Nigeria and our polity are grown beyond a level where any single person can enforce or enforce his choice on either the party or the nation. See, going by whatever definition, whatever the president may bear in mind, this and this is declaration through what you have read out would never, I mean, would never compel the current politicians in Nigeria being truly be through the governor or some other stakeholders to adopt whoever the president might want to force on them. I want people to judge the patient on something. I am sure of one thing. If the president has gotten a particular person he would love to support or to impose, that would have been disclosed or shown to people. But if I am all the social of one thing, he is trying to seek to be more democratic because as the 16th president always spending, he may not be able to single-handedly impose his choice on the system. That was why he's seeking the buying and the democratic support of governors. But why should that be Mr. President's call in the first place? I mean, I'm seeing that, you know, a lot of people are kicking against it. And I mean, the president is also making a case that he wants to hand over to a non-corrupt leader. And really, is this also, is the president also assuming that those people who are in the lineup of the APC to run for that office are all corrupt? Is that what he's insinuating? Because, I mean, it calls for concern, doesn't it? This is Trinta. This is grammar. And this is sheer expression. And this can be interpreted in million and one way. One thing I would say is what you have said is a generic expression. No right-thinking president would be willing to hand over to a corrupt professor. So the part I have said, maybe if I may ask you, are you insinuating that some presidents are corrupt in the lineup to your defense? So what we are just saying is that people should watch out and choose whoever runs to the qualities it would love to have as the current order of their office is in best position to appeal for other support in getting rid of those things. Isn't that too late in the day? And don't get me wrong, the president had, hold on, the president had canvassed for votes from Nigerians in 2014 based on the number one thing which was fighting corruption. Number two, he was going to fight terrorism. Number three, he was going to give us employment. I do not know any of those things that has been really done. And so if the president is saying he wants to hand over to a person that it's not necessarily corrupt, isn't that tad bit late in the day? And how can he, Mr. President, be able to tell who is corrupt and who is not necessarily... And I'm asking because of the people who surround Mr. President. Yeah. Now, thank you very much. If you have been around the shores of Nigeria since the advent of this regime, you will see in a lot of the president executive as desired to fight corruption. You will see our quality and the judiciary has not been very helpful. You will have so many options of what a lot of people have seen as corrupt practices. But the cost, the judicial system, unfortunately, did not end up killing first person the way the system would have loved it. So we have a lot of expertise from a true source that may be up to contacting this imposition. So that's why the president was saying, categorically, that if the judiciary has no help in taking up corrupt persons from the policy, for now, there is a democratic means of ensuring such persons from becoming its successor. Back to you, Mr. Shoomi. What damage do you think that this move that by Mr. President or supposed move or this appeal by Mr. President to be allowed to pick a success of sorts, what kind of damage could it do to the party and, of course, those who are in the running for this office? It will certainly cost the last thing that much if Mr. President is allowed to do what it's trying to do in the sense that when we should not forget that we are not in a monarchy system. We are in a democratic system of thought. And, therefore, the issue of internal party democracy cannot be sacrificed under the wishes of the desire of Mr. President. It will make a mess, a total mess of all the good work being done by INEG to promote internal party democracy. There is no way how only one person can be allowed to choose his own successor. That is no longer democracy to get to that level. Again, the APC needs to worry about the electorate. Many electorates will view this as totally unacceptable. There is no doubt that many people are disgruntled in Nigeria today as a result of one of the failings of this government which is on the security issue. I'm not saying what is government failed totally.  They did well in some areas. But the most important thing, which the constitution actually prescribed as a sole essence of anybody being in government, which is the protection of lives and the security of lives and properties of people, the government has hopefully failed. I'm afraid I need to say it as it is, you know, in that area. To the extent that the country is more divided than ever, you know, this is so deep, you know, and it has led to ethnic distrust, you know, and disarmament. So, therefore, how why should Mr. President be allowed to choose his own successor in that situation? If you talk about corruption, yes, I don't have any evidence to accuse Mr. President of corruption, but I have enough, I've seen enough, to know that many people in governments chosen by Mr. President were found wanted one way or the other. You won't forget about the multi-millionaire grass scandal that involves Papachel Lawal. We had so many other scandals, including the financial under the accounting of the federation, 170 billionaire. Only for the next person acting in his capacity is also facing the FCC. So, therefore, I'm not sure Mr. President alone can be trusted, you know, to select a candidate, which, you know, would be a tree of corruption. I think that should be left for Nigerians. Nigerians should be left to decide who they would prefer.  Do you want Barnabas or do you want Jesus? That's just the tip. So let the people decide what they want. It shouldn't be the exclusive result of Mr. President. What he's trying to do is not a consensus. Okay. As M.P. said in the Constitution, and also the APC Constitution, what he's trying to do is selection to select a candidate and get the respect back. I don't think that is right. That will have huge ramifications and I'm afraid that maybe, you know, what has backlash at the end of it. Okay. Finally, Mr. Justice, quickly, what do you see happening on the weekend because it's just around the corner? There have been so many, you know, people have made all kinds of assumptions as to who the president wants to give, you know, his vote or support to. I mean, this obviously came to a lot of people as a surprise when the president decided that he was going to pick someone to succeed him. But what do you see playing out over the weekend as we get ready for it? Thank you very much. The weekend is so close and one of two things will definitely happen. Either a complete dispersal of the APC or a stronger party imagine from the activity of the weekend because it is short. The emergence of a flag era for the party definitely will result from one of many processes. If the process that will produce the flag era is as desired by the stakeholders of the party and the electorate presently at the convention, then there is success both of an assurance. If any other thing comes to fall without the buying of the stakeholders with what Nigeria and Nigerians are presently, I can assure you that will be an early obituary of the party. Unlike my, the Magoda doctor there, she Nigerians have graduated beyond the level of imposition. Nobody can impose anybody on any party again. Gone are those days. You understand. So the weekend is close by and very many things will unfold but at the end of which only one will be visible to everybody. Thank you. The weekend is pregnant with a loss of surprises that may come to light. Well, I want to say thank you for being able to show me and Ade Wale, Ade Mola, Justice. Thank you gentlemen. Both are political analysts. Thank you for being part of the conversation. Thank you. All right. Thank you all for staying with us. When we come back, we will be talking with the humanitarian aspirants for the ADC right here in Lagos State.


Hello there! Welcome back to Gamedev Academy. I'm Shane. Let me know that you have arrived in class by leaving me a comment down below and I will place your name upon the screen as I have done with these people here who have successfully attended the last class. If you tell me which of our houses you're in I'll also put you in a color as well. Last time we made it so that our dynamic heads-up display would start to work with the amount of lives that we had left but in this one we're going to set up the score counter as well. That'll tell us how many points we've got and it'll also internally happen in the game mode as well so the game knows how many points we've got. So we're not waffle about it anymore we'll just do it. So let's get stuck in. Now that we've got the HUD working with the lives and that's all being tracked we're now going to do the same for the score. So we've got to get the game mode set up to track the score and also feed that information through to the heads-up display so that that's all working correctly. And we'll start by setting up the binding in the HUD just like we did for the lives. So let's make sure we've got the HUD open. We have. I'll just zoom in a touch. So we're going to be working on this box here which is where our placeholder score is and we're going to go into here and create a binding for that which again opens our widget blueprint as in the previous step. In here we need to create a new variable for the HUD and we're going to call it points. So we've got lives already so let's make a new one and we'll call it points. Of course we don't want it to be a boolean because that won't work that can only be true or false so we'll change it to an integer which will work for our purposes just nicely. And then so we can work with that we're just going to compile the blueprint and that means that we can now drag the points in. So we're just going to start by getting the points like so. And as in the previous step we need to get a two text node so that we can return that into the return node up here. So we're getting whatever the point should be return value is going to be changed to text and then send that to the on-screen display. We now need to go back into our game mode. So there it is, BO game mode. And I'm looking for my reset event because when we reset the game what we've got happening so far is we're just resetting the lives but we're also going to need to reset the score back to zero. So that's what we'll set up now. So what we're going to do is we've already got our HUD here so we're just going to drag out of here and we're going to set the points. So there's points there we can set that and we're going to be setting it to zero. That will work nicely. So now when we reset the game the two elements of the heads-up display are going to be set the lives to whatever the max lives are and then set points back down to zero. Now would be a good time to compile that to make sure that that's all going to be working properly. Now what we're going to need to do is create a new custom event within the game mode and we're going to use that custom event to actually keep score to update the score. So we'll right-click create a new custom event. I'm going to call this update score like so. We're also going to need a variable in this game mode to track the score. So we'll create a new variable and we're going to call that current points like that. That's already coming as an integer for me so I don't need to change it that's good and we're going to select this new custom event and on the inputs here we're going to add a new parameter. I'm going to call that parameter points and we'll use that shortly and that's going to be an integer as well. Okay so what we can now do is we've got this current points so we'll drag this in and we're going to set it and we're going to drop this just at the end of our reset game script. So we're setting the score back to zero and we're also setting the score on the HUD back to zero. So that's all working fine. So now we're going to do this update score script which is going to have a check in it. So because we're going to take points off the player whenever they die we need to add a check so that if the score ever goes below zero we just set it to zero we don't want to have minus scores. So we'll set that up now and hopefully it'll all make sense. So the first thing I want to do is just get current points and we're going to add so we're going to do int plus int I believe. Int plus integer plus integer there we go. I'm going to get the points from here which again we can set later and the current points we're going to add those together and then we need to do the check coming out of the result of this because if we're adding minus 500 to 200 that's going to give us minus 300 which we don't want. So we're going to add the check and the check is is it equal to or less than? Like that and we're going to add a branch to this because this is the condition. So I drop that down there and then we can connect that up. So what we're asking is when we update score is the score first of all going to be zero or less than zero. If that's true we just want to set the current score to zero so set current points to zero. So that makes sense if it's false however then we can actually add the score on because we're probably going up rather than down. So if it's false we're going to set the current points again but this time instead of just setting it to zero like that we're going to set it to the result of this addition here. I'll just pop a we'll pop a reroute node in here just to make that a little bit easier to read. There we go. So that's going to add those and set the current points to that but we also then need to so at the moment we're tracking the points but we're not sending it to the HUD. So we need to get that updating there as well. So what we're going to do is get the HUD and then as the HUD we're going to set points to so it's going to follow this whichever way it goes and the points target is going to be the current point. So we'll get this and that's going to go in there like so. So I've got a feeling that I could do with neatening this up a little bit so let's attempt that. Just going to drop a reroute in here so I can follow that. Yeah so that's looking pretty good that makes sense. So I'm going to add a couple of comments while I'm here so I'll add a comment up here for reset game and we'll add another comment here. Oh hello. I'll add another comment on this one for update score. You can see that my use of spaces is very inconsistent. I apologize to that. Try and cut out your use of spaces if you can because you can create problems if you're not thinking. There we are. Reset game update score so far so good. So at the moment we can track the score but we've got nothing yet telling the the score to be counted when we break any of the blocks and that's going to be the final stage of this particular step. We need to get that working so let's compile and save the work we've done here. Make sure everything's compiled and saved in the hood as well and the final place we need to go in this step is the block since that is where the points are being counted. So in the event graph at the moment we've got destroy actor happening but after we destroy it we also want to know how many points was that block worth and then we can add them onto the score so that's going to come after the destroy actor. So we're going to need to cast to our game mode since that's where the score has been counted. So cast to game mode and it's the BO game mode we want and then objects always going to be get game mode otherwise it won't work and then as the game mode we're going to update the score which is what we want to happen. So the target point is that we're going to add on. This is why we added this points to the custom event earlier so we can remove points and we can add them on mostly for adding on actually. So what I'm going to do is get points and this is going to convert to an integer because I had that as a float for some reason that's not a problem so that is now going to get those points and that's what's going to be added on when we update the score so I'm going to compile and save that. So now it's going to be a really good time to test this so what I'm going to do is just play the game and I want to see the score being counted so when I release the ball as soon as it hits some blocks that should start being counted which it is and it's also sending that to the HUD so everything's working as intended so at the moment if I just let the ball go we're not going to lose anything on the score and we're not going to lose any lives because we've not yet set those behaviours up but that is what's coming in the next step so hopefully I will see you in that next step for that information too. Bye! I believe that quality education should be available to everybody and for that reason all of the classes at Game Dev Academy are completely free and we're supported by our very generous school governors over at Patreon. If you'd like to become a Game Dev Academy Governor and support our work as well as helping us to steer the channel in the right direction then use the link in the description to be taken to the Patreon page.


Jamie Schmidt. I am the Community Evangelist for SightLock. We are a cloud-based website security company. I'm also a freelance designer and developer. I live in Portland, Oregon, and I'm originally from Wisconsin, so my accent. Usually, I make fun of my accent when I'm in Wisconsin, but I'm in Canada, and I sound like Canadians already, so you probably don't even notice my accent.  I have been creating sites in WordPress since about 2011, and I have been holding my breath when I push that update button pretty much ever since, and I'm sure that that is the same for everybody that does WordPress updates. And I've also broken sites because of updates and because of changes, and in the beginning I was doing those changes on live, like a lot of people do, because they just don't know that there are other options. And so my talk today is going to be on staging sites. This is not a developer talk, just to be clear. I know the previous talk, there was a whole get workflow and a whole more developer-based workflow. This is going to be for the users. Obviously, it can certainly be still used by developers, but it's really so that you can have a separate site where you can do your updates without worrying about bringing down your live site. So we're going to cover a couple things today. We're going to cover why updates is important to be in your workflow. What is a staging site? The benefits of using them for updates and new features. Things to consider while evaluating your options. There is not one, just one way to create a staging site. And along with that, there is no one perfect way to create a staging site. So we're going to go through a few options and let you kind of figure out the one that works best for you. And then we're going to look at some methods for migrating your changes, because just because you made the changes on your staging site, that doesn't automatically put them on your live site. So first, we're just going to talk about the importance of keeping your site updated. I work for a website security company. And the number one reason that websites get hacked is because they have outdated core theme and plugins. WordPress core is constantly sending out patches and updates for security issues as they're found. The WordPress security team works hard to find all the issues that they can and push out these updates to it. They do have automated updates, but theme and plugins don't. So if you're relying on core to do your updates for you, that's great. But a lot of times those updates can break things on your theme and plugins. So it's not really an option to not update is what I'm saying. But they won't help you unless you apply them. So you have to actually push that button. And that is a thing that scares most people because if you've ever had something break after pushing updates, you know that it can end pretty badly. I just took this screen cap today. So you can see that this is just Yoast in the WordPress plugins repo. It was last updated four days ago. If you're not paying attention to your plugins when they're having updates, that could have been a huge issue that maybe was a security issue. I remember a few years ago, Gravity Forms had a really huge security issue. I updated all my client sites. I was like, yes, perfect, got it. And I front up at my own site. So like it completely went down like a few days later. I was like, oh, yes. But updates happen all the time. And you never know when there's going to be that one critical security updates. You can't really just ignore updates because you don't want a new feature. A lot of times there are security issues that are being updated also. So you have used WordPress and you've looked in your plugins section and the admin. You see that you can click the update now button, but you also see that it gives you a little link right there that says view version 7.9.1 details. And what that is is actually a changelog. Every time a plugin or a theme or even WordPress core pushes out a new version, they make a list of everything that they updated. This one isn't a super long list because they're sort of adding on to 7.9.0. But you can see that it's kind of listing a few things, removed internal linking, meta box, Gutenberg. There's probably a lot of Gutenberg kind of updates happening right now. But before that, it was fixing a bug. There could have easily been something in there that says fixes a critical security bug. Update now. And if you're ignoring the updates page entirely, you're not going to see that. To that point, making changes on your live site is dangerous. So yes, we do definitely want to be updating our site for sure. We don't necessarily want to update on live because things can break. The white screen of death. You can lose all the content you've been working on. If it crashes, sometimes your theme customizations can be deleted. If you have maybe forgot to make a child theme, plugin conflicts, maybe you installed a new plugin that was supposed to be an awesome social media plugin. But it turns out that it has a conflict with maybe your live box plugin or something. And now suddenly, none of that's working. Broken links and images and then error messages for your customers and users. And you don't want to see that. It looks unprofessional. So this is a demo of the white screen of death in case you've never actually seen this. Push play there. And actually, I looked and white screen of death.com doesn't exist. So if anybody wants to please feel free because I think it was kind of funny. But that's like the number one thing you don't want to see when you update your site. It causes immediate panic. So okay, so what is a staging site? How can it make my life easier? First of all, what is a staging site? It's a private copy of your site for testing updates, any kind of new features and changes doing you know, internal QA. And then so then what is a production site? So the production site is another word for your live site. So when I talk about production or staging, or talking about staging is the one that you're that I'm trying to convince you to do your changes on. And then production is the live site that everybody sees. search engines are looking at it search engines don't want to see that your site has gone down. They punish you for that. So you want this site to always be like crystal clear, perfectly working. No, you know, trying out new themes at two o'clock in the morning because you think no one's looking like that kind of stuff. We want to try to avoid that. So okay, how can it make your life easier? So when you're doing these changes on live, there's like a time pressure because you're like, Okay, I have to do this before like somebody notices it, like maybe, you know, I'm, I'm updating something somewhere and it something went down for a minute, or maybe you're putting into maintenance mode, which is better. But still someone is seeing maintenance on even if it says check back soon. If that's the first time visited your site, they're probably not going to come back. So nobody but you but you was seeing the staging site, you can take as much time as you want. fear gray hairs from the terror of pushing the update button. That terror is actually one of the things that causes lots and lots of people to neglect updating sites. So that's why we're press kind of has the wrap of being an insecure site and blah, blah, because a lot of people don't do those up and that's one of the reasons that they pushed out the automatic updates was so that it was just happening regardless. But you don't have to be afraid of breaking your life site when you do those updates. So you're more likely to do the updates on time. errors and downtime makes your business look bad. All those things. It hurts your conversions. It hurts your sales. Google will, you know, flag you maybe. And then you can test out any new themes or plugins, anything that you want. You can show it to people, you can get feedback. All those things, because you have a duplicate of your live site, and it doesn't matter what you do to it because nobody else is going to see it. Okay, so I mentioned that there's a lot of different solutions. There are a ton of different solutions. But it kind of comes down to a maintenance plan. So can I just like quickly show fans of who actually has a maintenance plan, either from your developer or you yourself for keeping your site maintained, updated in some way? Okay, so maybe like a third of the room. That's good. But two, there's the room didn't raise their hand, so that's not good. So just because you own a site, and like the developer handed it off to you, there are all rights here by doesn't mean that you don't have to maintain it.  So I highly recommend figuring out a site maintenance plan, because this updates process is going to work into that plan. So think about how much time and resources you have for maintenance. Do you have a person that can do it? Or is it, you know, just going to be you when you find time? Think about what is your budget? Some of these solutions cost money. The solutions that are easiest cost the most amount of money. The solutions that take the most time and are more labor intensive can be free. So it's really kind of a balance of what you have available to you. How often are you going to be checking for these theme plug-in and core updates? Maybe you're going to check once a month, maybe once a week, once a day, who knows. But it has to be something regular. And when you have a site maintenance plan in place, now you can schedule a time to look at them and just check in and make sure that they are updated. And who is performing the updates? Make sure they know that it's their job to perform the updates. So that's just your general site maintenance plan. But when you're creating the staging site, it's sort of like a workflow inside of a workflow because there's so many different ways that you can create a staging site. So they're similar. What's your budget? You know, the time and resources that you have just for that updates workflow. But then you also have to think about how technical is your situation. So do you have developers working on your site? Things like that. If you have a developer and they're keeping your site in version control, you need to know that. They need to know that you're doing a staging site because it's possible that they already have a much more complex workflow created that you will need to follow. If your developer, whoever your original developer was, if it was you, figure what they did because they have maybe created a staging site that they were just using and not telling you about. So just kind of figure out the technical requirements. Do you have multiple people who need to verify changes before it can go live? This is a big one when you were working in maybe higher ed where you can't just push out whatever you feel like it has to go through three layers of people. Making the changes in one place and then showing these people and getting those OKs and yes, now we can make those changes live. How many sites do you have to manage? If you have a ton of sites, a workflow that's labor intensive and only covers one site is probably not going to be the best solution. You're going to want something that can, if you're using someone like ManageWP that pulls in all of your sites, you need a solution that's going to kind of work with that. And then how busy is your live site? This one I was actually talking with a couple of people yesterday and today. So how busy your site is, is actually going to help you decide how you're going to push your changes live because if you have a very popular e-commerce site that's selling like five products a minute, that's awesome, but you can't just overwrite your site, you know, an hour later because you're going to lose a lot of sales. You're going to lose people who have shopping cart sessions open. There's all that thing. So you can't just do a full overwrite. So you have to keep that in mind. Okay, so I'm going to go through. I kind of identified three types of staging site solutions. And last week I wrote a blog post on this. It goes much more in depth on what I'm talking about. So I'm kind of just going to go over it sort of quickly. And then you can, I can show you the blog post and there's like pros and cons and there's links and all kinds of things on there. But first of all just to think about what is actually required to make a staging site. So the first thing is you need to make a replica of your existing live site because having the closest replica of what you're really going to be working with on live, the closer the better. If you can completely exactly duplicate your live site and put it someplace else, that's awesome. If you have a huge, huge e-commerce site, that's, you know, maybe it's very big, that might not be practical for you. So as close of a replica as you can get, you need to put it someplace so it can run as a website. A web host, server, runs sites, but you can also do that locally if you put the right software onto your computer to run it locally. And then the third thing is you need to get those changes to your live site. That's not easy and there's lots of different ways to do it. Some of them are very complex and some of them are very developer specific, but it's funny because like if you ask any given developer what they're doing for staging, what they're doing for, you know, pushing their changes to live, you can get, you know, 100% different answers. Nobody is going to do the same thing unless they work together. But then if you ask them like, cool, how well does that work? Like basically all them are going to be like, eh, not well. And it's because there's a lot of complex moving parts that need to be accounted for. And part of your evaluation is going to be which do we absolutely require and which can we be sort of flexible on. So the solutions that I'm just going to kind of go through a few plugins, some WordPress specific development environments, and then some hosts that allow you to do this. So the first solution is something we call one click staging. This is something that your host offers as a solution. It's very WordPress specific. So sites that have managed WordPress hosting are the ones that are going to be offering these things. It's easiest and fastest. You're literally talking about clicking a button to duplicate your live site into staging, making your changes, clicking another button to push it to live. So like that's fast. It's fast and it's easy. It's not completely bulletproof, but it's the easiest one. But it's also the most expensive solution. And it requires that you're on one of those web hosts in order to make it work. So who are those hosts? There's more than this. But I do know for sure web hosting Canada. They offer it. JP Engine, SiteGround, Flywheel. So they all work sort of similar. Some make things a little bit easier. Some give you more flexibility if you want to do more developer type things. So I keep losing internet. So I can't really do a demo of it. But this is just an example of what WP Engine does. And so they have two ways you can manage your staging. One is from your hosting dashboard, logging into WP Engine.com. And then the other one is this, which they, when you're hosted on WP Engine, they pop that little menu item into your admin panel, your menu. And you can see it's pretty, it looks pretty easy like push the blue button to go from live to staging. Push the red button from staging to live. Like that's that's super simple. So it can be that simple. But it's it only gets more complex from there. So, so another fairly simple solution is to duplicate your website. And right on to your hosting and then just put it in maybe a sub domain or a sub folder of your site. And then so then you can make your changes. You can do that locally. You can make them on the staging site. Make sure everything works. And then you can just leave that staging site as it is and be like cool I push the update button. Now I'm just going to log into my website, my live site and then push that update button again. You can do that like that.  But the benefit to that is that you are running that on your exact hosting environment. You're not going to have any like you know PHP update surprises. You're not going to suddenly realize that you're using nginx and your live site and you're doing something completely different. So having it on there is a really good solution and being able to demo it. I have this little, there's a little video and I'm thinking it's going to, right? So it's actually pretty nifty when you, can you see that? Is that okay? Pretty good. Okay. So you basically go through a few steps right there. Name it and then like what do you want to copy? And it's in there like cloning. Cool. It's just like doing it for me. And then in the little box it's showing you okay these are the things it's copying. It's changing the links. It's doing all this. And so now we have WP staging com slash staging site. So that's actually the whole, a whole another site inside of the site. So when you log into that, when you log into that site you're logging into the site that's logged in to your site. It sounds, it sounds really complex but it works. So it's fine. I've tried it and it works and I'm just not going to ask questions because I know that what they did you know to make that work fine was a whole lot of work because I've done it manually. So then the third thing is you can set up a local WordPress site. This one is, can be also very complex. You can you know duplicate your site, export an archive from your live site and then just import it to your local website. Make your changes. It looks fine. Maybe then you can go back to live and make the changes again or you can do a push to live and overwrite your site or overwrite parts of your site. So what do I mean when I say local? So local means you're running a whole website on your computer, on your laptop. It's not available to the public. Nobody can like type in the URL of your staging site or your local site and go to your computer. But your computer is now running the same software that a server, Godaddy or WP Engine is also running. So it's processing all of the files and all the database programs and everything in order for WordPress to run because you need to be able to access the admin. WordPress needs to be running also. And then when we say the word remote, that means your site that's running on a hosting account that is publicly accessible. So there are two that I know for sure. There might be more program software that are specifically made for running a local WordPress development website. Desktop server where they were the first to do it. And then local by Flywheel, who is Flywheel is a hosting company. They also offer a similar solution. Local by Flywheel is a little bit more developer oriented, but they kind of do the same thing. So I'm going to do a quick desktop server demo. I did not have good luck with this screen. So we're going to see. So I have, I don't have anywhere to put this. I have desktop server. I download it. I installed it on my computer. And that's where we're going to go from here. So I'm just going to pop it open. Okay. And the first thing you see is, okay, desktop server needs to run as administrator computer. It's going to ask you for my username and password. And that's a Mac specific thing. If you have it on a Windows machine, it's not going to ask you for that. But it's saying, okay, restart desktop server with the privileges. And I can't see what's down there. Okay. Live demo is right. Literally did this right before my talk to just to make sure it was fine. Okay. There it is. Okay. All right. So now you see a little menu here. And you see one of the options is create a new development website. So literally all I did was I went to desktop server, server press dot com downloaded this package and installed it. It took maybe like 10 minutes. And now I have the capability of running an entire basically local development environment on my computer. And because this is specifically built to work with WordPress, one of the options is create a new development website. You can export import or share websites, create some sub domains. So I'm just going to leave it at that just to show you like how quickly and easily it works. We're going to spin up a completely new development website. So it's going to ask me, okay, what do I want my site name to be? We will say WCM TL demo. And then I'm just going to hit go. It asked me where I want to save it to. I'm going to just hit go. Okay. So right now it's doing a bunch of stuff behind the scene. It's taking its look, its version of WordPress, creating all the files, creating the database, configuring it, restarting it so that everything's going to work. And then we got the quick three minute install here that you're probably used to if you've ever installed WordPress. So the cool thing is though, this, the URL here is dev.cc. So this is completely running local on my machine. And if, let me demonstrate the best password. Okay. So no way. No. How about this one? Change me. It works really well to get people to change their password. Just kidding. I know. Install WordPress. And I'm going to click login. So this login looks a little bit different because desktop server has some extra cool things that it allows you to do. One of them is to bypass the login. So if you ever work with WordPress websites, and you know, maybe you're the admin, but you also have like subscriber accounts, and maybe you have editor accounts and you want to test things between the two. You can quickly log in and out without having to go through the whole login process or remembering any of the passwords. Okay. So here. We have WordPress completely up and running, and it was that simple. So once we go from there, it's like, cool. You got your site up and running. Now what? So you can export, import or share sites. So if I wanted to pull in my life site, which I'm not going to be able to do because my connection isn't working, but you can go to export, import or share a site. And if I wanted to share a development website, say I have duplicated my life site, it's awesome. It's done everything I need it to do. And now I want to overwrite it on my life site. It pops in here. Oh, I don't think it's going to work because I can't connect. But it basically asked me, okay, what site do you, what site do you want to, to share? You can't quite see what this is next. Okay. So anyway, you can push it to the life site. And it works just like that.  And it can overwrite those changes. Okay. So the bigger issue is moving your changes from staging to live. So I just showed you desktop server has this, this, the live syncing, but that's not, you know, the only way and syncing, by the way, means the changes that you've made in one place, putting those changes at the, at, you know, the new place. And that can be very complex. Just due to working with the database, the way WordPress saves things in the database. So you have to understand, like, first of all, what are you trying to update? What changes did you make on your site that would affect the, you know, two parts of WordPress, which is the database and then the files. So if you're changing your theme and plugin settings, that is only to be saved in the database.  So that'll help you to know, like, okay, well, I only changed some theme or plugin settings. So I really probably only need to migrate the database. I don't have to move all four gigabytes of my images folder. So kind of getting an idea of what you've changed can help you to know what you want to try to sync. And so the first one I kind of talked about was Replicate.  It takes the most amount of time and it's basically do the changes here. Yes, they're good. Now go over to live and redo all those changes one by one again. It's not fun, it's not fast, but it's the most straightforward way and it doesn't require you to do anything fancy. So you can do partial overwrite. Plug in WP site sync, duplicator, someone click hosting, they let you decide which table you want to just push if it's only one single table. If it's a few posts, I'm going to show you the WP site sync here really quick. So this is a plugin. And I believe that desktop server bought it. So it's now included in what they, what they, on their website. But so it's showing you the live site and the staging site between the two. And he just grabbed three posts. And it's saying, okay, push that to my live site. Well, that happens so fast. But so it basically was like, okay, cool. It's they're updated here. We're talking to each other. We made the changes. It was only the three posts you wanted. So then you can also do the full overwrite, which you can use migrator plugins. What I did with the desktop server, the push, you know, the pushing to override. If you're not using desktop server, you can also just export it, migrate it from like a WP migrate DB, something like that, snapshot pro. Okay, so I'm kind of running out of time here. And I just want to say that there's a bunch of different options there. So creating a workflow that like works for your, your, you know, your company, the amount of time and money that you have to spend is like the number one thing. Feel free to try out all kinds of things that work. The things that I covered are by no means the only ways to do it. There's as many ways as maybe there are people in this room maybe not, but there's a lot of different ways. Okay, so offering the staging site to your clients gives you peace of mind that they're not going to be breaking things on live and then calling you at midnight on a Friday to fix it, right? Additional revenue. So now you can offer, you can say, well, you know, you now have a staging site, you pay extra for that. And it's more complete solution than maybe your competition is offering. So it's not just for users that have to keep their site updated. As a developer, it's smart if you're going to be saying sign our tier client after you build the site and not selling them a maintenance plan, at least setting them up with the staging site so they can do those changes themselves. And then finally use a schedule. A sign a Google Calendar. I use one. It pops up when one of my clients needs their sites updated. It reminds you that you need to at least go look, are there any changes? Are any of my plugins obsolete? There's plugins in the WordPress repo that haven't been updated in like two years. And if you don't actually look and see that, you might not know that your plugin is out of date. So, you know, taking a taking a look at all your plugins and making sure that they're still up to date is important. And thank you. So I have a link to the blog post that I wrote. It's got a lot more information on all of the topics that I covered, pros and cons, links to things. And then my slides are also up here. So I have a few minutes for questions. I'm curious, anybody in the room already using a staging site? Does anybody want to tell the class what you're using? Anyone? So Brian is one of them is he's using WP Engine. And Brian is actually one of the people I was talking to that brought up the issues with having your e-commerce sites, you know constantly updated that you can't completely overwrite them. And another thing actually that he mentioned was if you have plugins that are set to automatically send out email reminders to your users and you duplicate the staging site, disable those while you're working on them because they might send out a link to your staging site that obviously your client can't access. Anybody else have anything that they're using? Josh. So Josh uses Pantheon and they're actually here today. Pantheon have a crazy awesome workflow that is amazing for developers. And Dwayne is here, if you find him and ask him, he would love to tell you all about it. So yeah, and that's more of a developer sort of oriented solution. Does anybody use something like flywheel, desktop server, any kind of plugins to do it? Cool. Are there any other questions? I know there's probably there's tons. I even have questions. But does anyone have any sort of general questions that I could answer quickly in the couple minutes? Oh, in the back. I'm just curious. The only time I've ever had to create a staging site was for a WooCommerce site when it was first being developed. And I created a staging site, then I pushed it live. And those are the only sites that I ever feel like I would need a staging site for because there are a lot of transactions happening all the time. What do you recommend with WooCommerce or any sort of e-commerce site? Do like, I just never know what would happen. Like the orders, if this the live site, there's stuff happening. And then I push changes to the live site, do customers lose their orders? If you could just talk a little bit about how e-commerce sites work with staging, that would be awesome. Yes. So that's a situation where you absolutely don't want to be overwriting your live site. And in that situation, when you have a big, as big of a website as that, that it's super important that you're not losing all of these purchases and products that are coming in, I would recommend you have a more custom developer based solution to that. Aside from that, you can just do the pushing things up piece by piece, depending on what you're updating. But yes, the important thing there is not to be overwriting things that are happening live. Pantheon would probably be able to help you with that too. There's not a, there's not a simple answer to that one. Okay, cool. Thank you.


Tom Johnson mentioned your commitment to the peace process and the fact that you in 1973 along with your North Vietnamese counterpart Lee Ducktoe won the the Nobel Peace Prize There are many who allege that you are a war criminal due to the systematic carpet bombing of Laos and Cambodia. Why was that bombing necessary to our strategy in winning the war? And you know by now I in my 90s, so I I've heard that I think the word war criminal should not be thrown around in the domestic debate. It's a shameful, it's a reflection on the people who use it. Let us look what was the situation. First there was no carpet bombing. So that is absolutely not true. What the situation was is followed. In the Johnson administration the North Vietnamese moved four divisions into the border areas of Vietnam and Cambodia, on Cambodian soil and established base areas from which they launched attacks into Vietnam and these divisions were put there in opposition to the local, to the Cambodian government. In fact the Cambodian government told such the bolds who was there as a representative of LBJ that if we bombed those areas and didn't kill any Cambodians that they would close their eyes to it. The LBJ administration decided not to do this because they were already under pressure domestically and for other reasons that Donald Johnson may know better than I do. But then the when Nixon came in Nixon had already just before he assumed office sent a message to the North Vietnamese that he was eager to resume negotiations. In the third week of the Nixon presidency they started an offensive in which every week 500, up to 500 Americans were killed and many of these attacks more than half of these attacks came from the areas that were occupied by those four divisions inside Cambodian territory and after we had suffered 1500 casualties nearly as many as we suffered in 10 years of war in Afghanistan Nixon ordered an attack on the base areas within five miles of the Vietnamese border that were essentially unpopulated. So when the phrase carpet bombing is used it is I think in the size of the attacks probably much less than what the Obama administration has done in similar base areas in Pakistan which I think it's justified and therefore I believe that what was done in Cambodia was justified and when we eventually wiped out the base areas the casualties went down by 80% and so those were the decisions and I would bet that sooner or later any president would have had to do it because this is one that if you fight a guerrilla war and permit base areas from which the the killing units of the guerrillas are sustained then you are in an absolutely hopeless position. Those I would secure the advisor. I strongly favored it but I was not because I was at such come in but it doesn't matter I am certainly was strongly supportive of it. It was correct and it was in the American interests and the civilian casualties from this bombing along the five mile street was justified. We have to have another thing the argument against doing it was that Cambodia was a neutral country a country that has four divisions in its soil it's not actually a neutral country and and the leader of Cambodia, Prince Cyrnouk told the Johnson administration that he would in a way welcome this bombing when we then actually did it there were press inquiries and he said at a press conference I don't know what goes on in the part of my country in which no Campodians live and which is occupied by the Vietnamese. If any Campodian is killed or even a Pollock is killed I will protest. He will he never protest