Okay, everyone, welcome to another session. This session is being done by Alex Mathews. Alex organizes the Wellington Drupal Meetups, going back to 2012, and also helps oversee development and ongoing support of New Zealand's Drupal Community Science, which is Drupal.org.nz. He's also the CEO and co-founder of Xequals, a digital agency, and also a CEO of Frost Plain Games, a game design company. Can I request all the attendees to please ask their questions using the live Q&A button at the top, and we will be picking up those questions at the end of the session and answering them. Thank you, over to Alex. Hi there, everybody. It's lovely to be with you all here today. I'm speaking to you from the gorgeously sunny blue sky Wellington. Not that many of us would know that at the moment. I'm given that New Zealand obviously is in a rapid lockdown. So I join you from the comfort of my living room. Fortunately, I was able to snab these signs just in time to give you the illusion that I'm calling in from a professional environment. Anyways, I'm here today to talk to you about one of our favorite Drupal projects. We've been working with Drupal since Drupal 5, way back in the day when my co-founder and Irox Flame were building nonprofit community-driven sites using Drupal. Since then, we've came in leaps and bounds, and I'm using this policy project not only as an example of a case study that we're already proud of, but also as a case study of a project that sort of doesn't fit perfectly into the Drupal 9 upgrade path. Or rather, it could be a good candidate for legacy support. It could be a good candidate for an upgrade or for a rebuild. And I figured that many of you, especially those of you who are on the technical side or on the high level business end will be in similar positions right now, whereby you've got code bases that you've got to make these calls on and give your clients or your stakeholders good information to work with in terms of what the best future for their Drupal code bases. So I assume you can all see my slides, and I am just gonna start going through them. And... Pardon me. Cool, thank you everybody, is it? All right, so policy.nz. Now the best thing that you can do to understand policy is to go there. So I encourage you all right now in a new tab, just pop over to policy.nz so you can see what the most recent iteration of the website looks like. So what is it? Policy is a platform for recording and communicating policy information. And sorry, I've just got a bit ahead of myself because I'll quickly tell you about who X equals is and who I am. Co-founded with Rocks Flame about 11 years ago. We're based in Wellington and based in Melbourne. We have a large portfolio of non-profits and social good clients. We tend to prioritize projects that we like to work on. We're passionate about good governance and politics. We're proud Kiwis and we often campaign for better public services and open data, as many of us in the digital communities tend to do. And we love a good Drupal challenge. Which this certainly is. So more about sort of the background of policy here. Every presentation I've ever given has always had pixelated memes. And I didn't want to stop now. So I can't hear any of you all, but hopefully there's some giggles happening somewhere. The due policy they said, it'll be easy, they said. I think that's the one that the team relates the most to. Given the turnaround on the various policy projects we've done and how technically difficult they've actually been. And here's the meme that really makes it for me. And this is why we're so passionate about the project. We are really, really interested in there being an educated voting community. The electorate needs to know what's up in order to make good decisions.  And we really feel as a policy communication and informed voters is actually the solution. And frankly it's low hanging fruit, given that there is so little on the way of good policy communication out there. Okay, so just a quick overview of sort of what we've used it for. And then we'll start getting into more detail about what this platform actually is. So we first built it for the 2017 election for a group of young lawyers who are our clients that we work in collaboration with. It was subsequently forked and repurposed for the 2019 federal Belgian election, which was one of the most complicated projects we've ever done in terms of data modeling because in Belgium they have English, French and Dutch. They've got political parties that have the same name in those different languages, but different policies, if you can believe that, because technically they're different parties, or within a MMP structure that I believe has something like 17 different MMP parties. So sometimes New Zealand, we think our elections are pretty complicated, but Belgium really takes the cake. And so that was a very difficult project. And I was hoping that Dries would actually be in the audience, maybe he is. Because he'd probably understand our pain. So we're going to look at demos of these in just a moment so you can see what they look like a bit better. So as I mentioned, it was led by a team of young lawyers deeply aligned with X equals values, which is why we pounced on this one. Privately owned, but supported with sponsorship, including from X equals. We were quite happy to put our time into this one. Some really good editors, the editor of New Zealand's largest newspaper, the Herald, famously wrote that the real winner of the 2020, pardon me, sorry, 2020 election was the policy website. And we have been finalist just recently for the upcoming New Zealand best awards in the social good category. So that's a real boon for us and our team, and we'll be flying up to Auckland in a minute. So we're going to look at some of these so that's a real boon for us and our team, and we'll be flying up to Auckland to COVID permitting later this year to attend that. Cool. So just before we jump into some technical stuff, I would like to quickly show you what the sites look like. So for those of you who haven't already jumped over to policy.nz, this is what it looks like. You can explore the parties, the candidates, the policies, the referendums. We'll have a quick look at some policies. I was warned to not tempt the demo gods by trying any live demos. But as a few of my colleagues know, I have a highly healthy appetite for risk. So here we are on firearms. Now all of these are categorized by the political party. We can jump through and we can see what the various different parties are saying about these things. We can expand policies and read more about them. We can share them. We can look at the sources and citations. Now we also down here have this amazing option to turn off all party names. And this will allow you to navigate policy categories or policy domains within a larger subset and do so without actually knowing which political party you're looking at. This is quite interesting and I encourage everyone to go and do this because you may end up finding that you support policies that aren't from your typical tribe. To support them, you can obviously heart them. And this adds them to your cart, which you can then go and check out at the end. I've only added a few policies here, so it's going to be pretty basic. But you get the idea. It'll generate a graph of the policies that you've liked and you can share those to social media should you wish. So that's policy.nz. Now I'm going to really quickly show you another version of the code base that we developed called Policy Local. That was for the local body elections in 2019. So here we are. Now this is the same Drupal 7 code base but has had some new features introduced. It's more about geolocating you to certain electorates and then allowing you to view policies and candidates within those electorates. So I don't mind you knowing my home address at all. It's not public anyway. So we're going to just bring this up to Watson Street is what I want. There we are. And so what this is going to do, it's going to return a mesh block from the address finding API. And then Drupal is going to use that to determine what elections I'm eligible for. So the Mayor of Wellington, the Wellington City Council, the Wellington Regional Council, the Capital Coast, the HBs. And then we can see a summary here. Jump into any one of these and then see all of the candidates and all of the policies within those elections. Now this is non-trivial as I'm sure some architects in the crowd are thinking right now. And you can imagine how much content we actually have. There's about 3,500 candidate profiles in the back end here. So an enormous amount of content loading, which is also why our content loading tools are so sophisticated for the site. Cool. So I won't tempt fate too much further with that. But what I will do is show you another fork of the project called COVID-19 Policy Watch. Now this has been offline for a couple of months now. So I'm just showing you a testing environment. But again, same Drupal 7 code base repurposed to track the world's COVID-19 responses and policy changes. This is all done as a non-for-profit engagement. X equals donated its labor to this one because we were all just trying to do something useful during the outbreak last year. So this isn't public, but I just wanted to show it briefly so you can see how versatile this code base is and how many different things it's been doing. So just looking at New Zealand here, since the stop being updated, which I guess was 15th of May 2020, we were tracking all of this data in real time and the changes in policies that the countries that we were tracking were doing. This ended up being a repository of some pretty useful information for researchers. And I'm not sure if it has a future or not given it was really just a once-off project. But we were pretty proud of what we were able to turn around in a matter of weeks to get this online. So moving on. Great. So these were the main principles that really drove the development of the site. It really was about journalistic integrity. This is information for information's sake but delivered in the most easy to interact way possible with columns supporting that with privacy and speed and the ability for users to personalize their shopping carts of policies. And every web experience is meant to be unique. We hope that every user is able to have their own policy experience. So we worked with a team of lawyers to provide all the content which was essential. Fortunately as the developers we weren't liable for the content but obviously the content side of it was just as intense as the actual technical development itself. Blinker's mode for turning on all of the political names of the parties that was a big undertaking than randomizing the actual data in terms of how it was ordered so that we weren't perceived as favoring any particular party. So for personalization we had a goal to create an intrusive personalization with users never needing to create an account on the site but retaining their favorites. And again, non-trivial. Doing all this customization without any user system. So we used adi which is an address lookup service to help users find their electorate and candidates. This allowed us to sort of enable users to create lists of their own preferred policies and share them with others. And how do we achieve this without user accounts? We stored as much data as possible on the user's end and only collected non-personalized information. So that meant that their cookies and their session browsing data was doing most of the heavy lifting in terms of personalizing the web experience. Privacy and speed were super important to us. I don't think we've ever done as thorough sort of stress testing and using automated testing tools as we did on policy. The site actually did go offline once or twice during the election which we considered a huge success given that it basically pushed the system as hard as it possibly could go before we had to sort of look at those bottlenecks and addressing them. But again, it was a sign of success. It was a high quality problem because we had a significant percentage of New Zealand's eligible voters interact with our website. I don't know the exact figure so I don't want to be quoted on that. But I do believe it was a presubstantial amount of people in New Zealand saw the site or interacted with it in some way. So for those of you who are technical, the way that this worked with geolocation was that when the user enters an address we send a query to the ADDI API and receive a mesh block back for the addresses. A mesh block is the smallest non-person identifiable location metric we had available for then personalizing their data. Now we added that mesh block to the user's cookie along with their matching electorate so that we didn't need to store all this data server-side which would have ballooned into an impossibly large amount of data eventually. So we keep it in client-side where if we can until such point that the set is meaningful from a statistical perspective, we decided that this would be when the user decided to view a summary of all their policies that they've collected and at that point we collect a list of policies mapped just to the mesh block and generate a graph for the user from their cookie. When the user shares their set on social media it is shared via a URL that contains only the ID for each policy and this allows us to create shares that are not tied to a person and rather generate the cache on the fly based upon the URL shared and viewed. So that's relatively sophisticated as a solution and the reason for doing it was just to reduce the possibility of users and their preferred political policies being stored on the server. So the privacy policy is available on all pages and really, really clear human-readable breakdown of what's collected and what's not because for us being really clear if the user about that was essential to this whole thing working. Cool, so just looking at some core Drupal entities I won't spend too much time on this but it's important for those of you who are interested in the upgrade. So our policy content type was reused across all five policy implementations. The fields that were used were a little bit different but it turned out to be very, very dexterous and reusable and that was down to the strength of how the data model had been built in the first place. Significant usage of taxonomies as you can imagine given how much data needs to be tagged. I'm not gonna tap the demo gods too much further but I will just show you what it looks like to enter in a COVID-19 policy. So here's the backend. Pretty simple. Policy ID, the name of the policy, the details, the country it's connected to, the issues that it relates to, the date it's announced, the date that it expires, if it's been superseded by another policy and then citations. This was one of the simpler data models. The national elections I believe were a bit more complicated but you can see how simple it really is for someone just to go in and load a policy. Sorry, just coming back here. So there's not too much more to say about this other than that the policy local body has quite a significantly different data model in terms of the candidate profiles given how many candidates we needed to actually cover. All right, contra modules. We didn't use that many but the ones that we did use we made heavy usage of. So I'm sure developers in the audience will be very, very familiar with us. Flag's module is handling the hearts on the cards. Views is powering most of the screens on the website. Better exposed filters is allowing us to filter down those views in real-time. Colour box for popping up the policies when you click on them. Display suite goes without saying. I'm not sure anyone built sites without Display Suite these days. High charts for generating the charts and the rest of these modules were sort of managing the data on the back end and getting it in there. Do we have any custom modules? Do we have any custom code? The answer is yes but not if we can avoid it. X equals is quite capable when it comes to developing modules and writing PHP but for us that is a last case scenario. It always makes a lot more sense to find a heavily supported community project and give back to that or use it for what it was built for rather than reinventing the wheel. I know I'm preaching to the choir here but it does need to be said because to this day we still see people using Drupal for the wrong reasons but we feel as though we did well by only needing custom codes for retrieving the mesh blocks and geolocation data and the party colours and blinkers mode for turning on and off the party information the swiper.js and the theme layer so that this all works in a tablet swiping left and right queuing, oh pardon me let's jump back here queuing user policy data submission for performance that was really important because otherwise the site would fall over and moving flags client side for performance as well which was something that we learnt from the 2017 implementation. Cool, so what is the future here? Because there is another NZElection coming up. Well this site is a really good candidate for upgrading to Drupal 9. It would be a substantial undertaking but that said it also isn't broke it works great as it is there's actually nothing wrong with it. If Drupal 7 was maintained infinitely then there may not be any need to upgrade this at all it would probably be totally appropriate for the next election. However we live in reality code bases need to be upgraded and therefore we need to make a decision on what to do here. So I know that everyone always prefers through a fresh build I certainly do it would be great if we could rebuild this from scratch and migrate to the know-how and logic rather than migrate the code I think that's a really important point here because as many of you I'm sure are aware you've all had the experience where you sit down you write let's say a document and then you accidentally have the power cut you lose all your work and you've got to start from scratch. Doing it a second time round you often do it in half the amount of time and you do it better and web rebuilds aren't particularly different I don't think so I would love to rebuild this from scratch if we could but it would also be the most expensive and time-consuming option and naturally if you're the client and you've invested all this time and money in developing a product you want to make the most of it and that's something that we fully support because that is the promise of Drupal as well. So as legacy support support an option well absolutely it is some suppliers Acquia predominantly are going to be supporting Drupal 7 well into 2025 is the pricing public or available easy to understand no it's not and that's not unique to Acquia that's all the various different people around the world saying that they'll provide Drupal 7 support it's actually really hard to find out what you should expect to pay which means that you should expect to pay a lot we've got the next New Zealand election in 2023 we hope to be covering it with the system so something needs to be done before then with the kill date for D7 at least in terms of community support being November 2022 so the chronology here does force us into needing to be quite strategic now it's going to be a losing battle long-term to support this on Drupal 7 because we won't be receiving all the benefits of Drupal 9 it'll become less and less secure over time it'll become less stable and we will just be really swimming upstream rather than just taking advantage of modern technology so we're not in the business that equals of maintaining Drupal Core we'll honest with ourselves about that and we'll be advising the client that this solution might be cost-effective for a year or two it might get us 2023 but if they want the product to have any continuity beyond that then they should consider a rebuild or a fresh build really soon for an upgrade I should say so this here I think is the favourite option a D7 to Drupal 9 upgrade we've done a few of these at Xequals most of them have gone more or less to plan there's a little bit of friction broken views front-end tweaks that's to be expected as I'm sure we're all aware so I put down here probably the best option but like all sites in the situation does require an investment I'm sure many of you have been in the situation especially those of you who are client-facing where the client just doesn't understand why they need to pay to upgrade a bit of software especially if they've been using it without errors for years and you know a good argument needs to be made for why at least while technology is still evolving we need to constantly be rebuilding it to stay up to the play and I think our client understands that but the cost savings here aren't dramatic maybe 25% maximum cost savings in terms of doing the upgrade versus a fresh build pros and cons a fresh build in some ways would allow us to move faster but the Drupal 9 upgrade will give us hopefully most of that work out of the box it's actually quite hard to tell but my guess would be that the upgrade will be 25% more cost-effective and more time efficient with a fresh rebuild so brace yourself a new policy is coming one way or the other we feel like the site is too good not to hold onto it the site is relevant way beyond New Zealand in fact any MMP democracy can benefit from this ultimately these are always client decisions they need to do their cost benefit analysis and decide on what's going to be most appropriate for them but I was really hoping to use the last part of this presentation to ask you all what you think and get your active feedback on this because I think as is often the case with Drupal there's a million ways to skin a cat and sometimes there isn't one particularly right answer there's just a complicated set of pros and cons I think that's the beauty of Drupal is that there's so many different ways of doing things but I also understand the tyranny of having too many options available sometimes it's nice when decisions get made for us so I'm really keen to know from those of you in the audience what do you think let's share our knowledge about this what do you think about policy do you think it has applicability outside New Zealand can you imagine this working in Australia what do you think about the idea of us investing as societies and educating our voters and working backwards from people being being motivated by understanding policy rather than tribalism or personality politics or just going along with what the people around them are saying versus taking intellectual responsibility for understanding what you're actually voting on and how it impacts you I know it's something that long-term we hope continues to be a focus of democracies globally but watching the world as it is now it also seems a little bit utopian in some ways so I would really love to know what you all think and with that I believe we are heading just into our last couple of slides here yeah questions and answers Alex I do see a few questions do you want me to go through them yes please if you can speed them out we'll just take them as they come so Karina De Leon is asking what is the API that you used what is the API that's used yes there's at least one API the first one is to the ADDI address API which is returning the geolocation information based upon street addresses that's basically what you can see on the policy local site when you type in your street address and then it returns that based upon the postcode finder I don't think we're using any other APIs than that to be honest our main solution architect and co-founder of xEquals rocksflame we don't have any other person to answer that but to my knowledge it's just that one API that we're using of course sorry google analytics API is always in there somewhere as well of course the next question is by Griffin this is fantastic thanks for sharing Alex yes I certainly see this having a place slash value in Australia I know that ABC does something similar close to states cash federal elections so this is not a question specifically it's more of a compliment for you Alex well that's lovely to hear well thanks for that mate and to be honest that is what we've heard from pretty much everyone we've shown this to I've shown this to people in Europe in the states I've got friends in Canada who are wild about it and a lot of people want to sort of take this back to their countries and make it real I think the burden for a lot of people is finding someone who's motivated to actually get all the policy content together to vet it legally and be willing to stand by it and I also have to be clear that this is owned by our friends at policy limited who paid us to build this and they would be the gatekeepers to the code base but I'd be happy to put anyone in touch with them if they're interested because they are motivated by a social entrepreneurial approach and really it's not about making money it's about educating voters about policies so if anyone in the audience is actually serious about doing this in their respected country which I imagine would only be Australia given the audience of people but if anyone is interested let me know Alright the next question is who did the design slash illustration Ah yes that wasn't my speaker notes and I'm really glad that was asked because I didn't quite get to it so thank you to whomever asked that Rachel Reeves is a really good friend of X equals she was a contractor for us in our very early days she's worked for a lot of places around Wellington and she was one of the founders of policy limited and that's part of the reason why the project came to X equals was because we had that social connection with her she's a really incredible UI UXer she does freelance work occasionally and if you Google Rachel Reeves UI UX you'll probably find her I think her website is rachel.works or something like that and we foresee future collaborations with her as well but I also just want to mention that I'm finding a really good senior UI UXer is very very hard but you can see from the policy side the benefits that you get from doing it and I think that has been nominated for the New Zealand Best Design Award I've had a lot to do with her work That's awesome and my question is how have you done the content is it manual if you could improve this process how would you do it Yeah right to be honest this was one of the biggest parts of the project it was building all of the feeds and porters so we used the Drupal 7 feeds module in fact the feeds module being stable for Drupal 7 was one of the big drivers for us using Drupal 7 when we started this project Drupal 8 had just came out but it was unstable there weren't many modules ported and the modules that we really needed like feeds just weren't working the way that we'd hoped so going for Drupal 7 was actually about making the project feasible within the time frame and the budget that was available because things like feeds would take us more time to code from scratch than the whole rest of the project and we are talking about bringing in thousands of content objects including content objects that are constantly changing so we built a whole bunch of different feeds the client was putting together a spreadsheet based upon a spreadsheet template or spreadsheet templates I should say because there are multiple different feeds and then those were being sucked in and aggregated into Drupal 7 content quite a bit of fine tuning and trial and error was needed on that I know that my co-director Rox was up late many many nights working on that but obviously it saved hundreds if not thousands of hours of what would have been an extremely tenuous manual content loading process so the answer to the question is that we turned CSV files or spreadsheets into Drupal 7 content by maybe half a dozen quite sophisticated battle-tested feeds that not only sucked the new content but also updated existing nodes cool thank you for that the next question is by Nicholas Santa Maria and he's asking what are the specific challenges of policy? Oh wow there were many I think in most cases it came down to the timeline we were often sort of prepared to do the project but told to hold off until certain sponsor support was secured we needed confirmation that the Electoral Commission or Sponsor A or Sponsor B was going to come to the party and so by the time that we were given the green light to proceed we often only had maybe a couple of months before said election was coming up and turning around this kind of product in that amount of time with a relatively small team because x-equals isn't huge I mean we're only maybe a dozen people that was significant but in every case we delivered we always do I think that's just down to the strength of our team and the seniority and the skills that we have as a really high capacity team but the timeline was one of the biggest challenges. I think scaling the site to deal with ever-increasing traffic was definitely a big challenge as well I know that especially in 2017 there were some performance issues that we had to really address in subsequent implementations I think originally we were storing a lot of that personalization data on the server and so the server just got bigger and bigger and bigger and bigger until I believe we had gigabytes and gigabytes of data relating to various different user sessions now not only was that an issue in terms of storage capacity and performance but we were very aware of privacy considerations and not wanting to hold any data from users even where it was anonymized so rebuilding that to work client side rather than server side that was quite difficult but ROX and the various different developers he was working with was able to achieve that so yeah the big challenge was scaling to ever-increasing traffic to addressing bottlenecks in the performance like certain views would fall over unless they were cached really carefully and the biggest challenge right now is dealing with the fact that it works fine as it is but for it to have a future we're going to have to rebuild this in Drupal 9 and that's going to be a lot of work Alrighty so the next one is by Nathan Dobbin and he's asking great site I'm pretty sure I used it when it first came out do you keep track of policies across elections might be interesting to see how policy has changed over time Sorry the last bit of that question you said do we keep track of every New Zealand election do you keep track of policies across elections and it might be interesting to see how policy has changed over time Sure thank you we don't it's not our place through that but the client policy limited certainly does and I think if they keep doing this long term which I suspect they will then they'll have one of the best data repositories in New Zealand or in the world rather with the political policy data and how it's changed over time because if you think about it it's kind of remarkable that every democracy especially western democracies aren't doing this already there's certainly no one else in New Zealand who's doing this the government itself doesn't do this at least not to our knowledge so we are building an arc of information here which will only become more valuable over time and again it totally blows my mind democracy doesn't just have this as a public service and the Ministry of Statistics or the Ministry of something or other doesn't take this on as a responsibility the fact that private citizens have had to come together in order to be able to communicate to the public what they're voting for I think that reveals a lot about the areas of our democracies that are yet to mature so for now yes all that data will be held by a private company but my hope is that one day it doesn't need to be that way all right the next question is by Nicholas Santamaria it's not a question more of our information in Australia the ABC have VOTE campus which is a similar concept to the turn of party names feature of this project and then he's also given us a URL which is votecampus.abc.net.a I would say quickly I will go and have another look at that because I've certainly seen it in the past but there were several other competing sites with us that were trying to do similar things I think we had VOTEWISE.co.nz and there was at least one other where they massively differed is that they were sort of question wizards that would then tell you how to vote at the end you know you'd answer a few questions you'd hit a few checkboxes you'd say how you feel about certain issues and at the end it would say congratulations or it would say you're a conservative that's who you are go and be conservative and I'm being a bit reductionist here but the truth is that that's how we saw most of them working on the high level and fundamentally we wanted to do something different which was be impartial be journalistic let people just consume the data and for us being able to turn off the ability to see which political parties represented which policies that was really important to us was the point of differentiation from those other services so I'll certainly go and check out VOTEWISE.co.nz and re-familiarise myself with that in Australia but I suspect it's going to be closer to a tool that tells you how to vote rather than a service like Wikipedia or policy but I'm happy to be wrong about that so I'll go refresh myself on it thanks thanks Alex the next question is by Sean Hamlin he's asking do you store any data from the number of policy hearts or was this all tracked through Google Analytics? Sean always nice to get a question from you that's honestly going to be a better question for Roxx so I'll ask him to give you the lowdown on that next time you talk to him I'm tempted to say that it doesn't include any service side data about the user I'm just conscious of the fact that certainly IP addresses would be recorded there could be a little bit of other stuff but it would certainly all be anonymised and we worked really hard wherever possible to store data in the browser rather than on the server especially in the later implementations of it so if there is any data server side it'll be extremely minimal it's probably just session data but I will take a note of Roxx getting back to you because I know the two of you are very technical we'll have lots to talk about there and the next question is by Karina and Karina is asking did you do any custom development for the FEEDS module to work or was it a matter of mapping fields to various different quantum types you have do you know if FEEDS is still a stable module to use in D9 or is there any other alternatives that can use similar implementation of importing content wow that's several great questions again I'm just going to speak to that sort of most high level knowledge just so most of you know I'm not the most technical person that it equals I'm more of the business guy but I know enough technically to be dangerous as we say so I'll do my best to answer that I don't think we did any active development of FEEDS I'm sure we were on the issues queue and we may have written a patch or two that wouldn't be uncommon but I don't think we did any significant contribution back to the FEEDS module is the FEEDS module stable in D9 I'm not sure I'd have to have a look last time I checked in the sort of the back end part of FEEDS what was largely there but there was no UI for it and it wasn't particularly stable and there was a big sort of rift in the community between using FEEDS or using Migrate API and I think that the D9 Migrate API is preferred by many people in D9 in terms of sort of moving data around and again that's all command line driven and isn't quite the same as FEEDS FEEDS had a great user interface in D7 it was really easy for someone who's only semi-technical like me to use it the client was able to use it which was great but I'd never expect the client to go and use a command line for sort of mapping fields across which I think is the more accepted way of doing it in D9 which is the other answer to your question what are the other competing solutions to FEEDS and look there's actually quite a few if you google import export tools for Drupal you'll find that there's many many dozens of solutions I think for getting data out various plugins for views are considered the best practice it's certainly what we typically use so there's the views export module there's the views rest module and there's others which will perform very specific kinds of exports and they're already really good for particular use cases and then the migrate API I believe can be used for typically migrating entire Drupal projects but can also be used to sort of map data from one system to another and I think that depending upon the developer and depending upon the particular data input or output challenge you'd find the best module for that by just evaluating the available ecosystem so I'd be googling Drupal 9 import export modules and then I'd do a comparison table of what they can do and then choose the best of breed based upon the particular challenge I'm sorry I can't give a more quicker answer there but like a lot of things in Drupal you've got to get out there in search you've got to evaluate the ecosystem and you've got to make an informed decision based upon the particular technical challenge you're facing yep and the last question here is from Dallas Ramstone and Dallas is asking Empowering Talk Alex, thanks how much data needs to be brought over into the new site if there is not much custom code and if there is minimal difference between a fresh build and migrated site in my opinion have you considered leveraging migrate API to bring over the data instead of feeds gotcha Dallas I've heard from you from ages but great to hear that you're there yeah great question I suspect that would be the next step we'd look at as part of evaluating a Drupal 7 to Drupal 9 upgrade it may make sense just to lift and shift the data and use the migrate API for doing that into a fresh Drupal 9 build that would be again one of the many options we've got available and again this comes under the the tyranny of decision making because even under the D7 to D9 option within that there's three different flavors of how we can do it and using the migrate API for the data and then otherwise rebuilding the config that could be a perfectly good way of doing it what I will say to that though is that I think most of the secret source in the code base is down to how it's configured the features that it's doing and how it's doing it the data itself is almost negligible given that the policy data for the next election will be completely different from the policy data for the previous election so moving the data is less important than sort of migrating the features if that makes sense alrighty thanks a lot Alex for this great talk just a reminder for everybody who's attending that the lightning talks in the round table session starts at 2pm AST slash 4pm INZ and yep thanks a lot see you there thank you everyone and check out policy.inz again if you if you want to keep it in mind cheers bye


My name is Jada Wyman. I'm 16 and I'm a goalkeeper. It's awesome. The environment is amazing and training with a new goalkeeping coach. It's just good to be around the girls as well. The girls just kind of remind you that you're part of the team. You're not just the youngster of the team, but it doesn't come to mind very much anymore. It's awesome. Cumberland and Keelan, they help us out a lot between each other. But yeah, Carmelina through the back, she helps me a lot in Keelan. They told me that they believe in me, so having that little confidence helps a lot. Yeah, it's really good having Norm from MacArthur. He helped me move from Canberra, giving me a spot. Just these dad jokes get me there, but yeah, it's fine. I think we started off really well against Adelaide. We didn't get the result we wanted, but I felt like it was our first real game together. I feel like we're getting better throughout the season, which I guess happens. But yeah, it's coming together.


Hey, good afternoon everybody time Stewart here. I'm with loose Trotter. This is smart business moves Hey, y'all Can't hear very well. Let me get my volume up Well, I'm looking haggard. Wow, that's rough. Sorry y'all Some days are worse than others but hey I've been getting like texts and Messages of stuff from you like six o'clock my time. That's like That's that's late Yeah, I'm having I'm having some early days my my time right now and some late days So I've got one more day of this and then I can like rest and be be normal again I have really something exciting happening though My daughter and grandbaby are coming. I think I told you that yesterday tom. They're coming for I think six days Yes today's worse than yesterday robin And I also had to go to the orthodontist in the middle of the day and I had to still be live It was like I had to while I was at the orthodontist. I'm like, oh my gosh, this is horrible So you were you were like a lot you were you're doing some training this week And you were like doing the training while you were And I had I had to get approval Who approval from who from the um the uh the managers of the program The coaches Okay, I also had to get approval from my orthodontist And how can I do this and because uh confidentiality, you know all that kind of stuff So it was a huge thing and you were like Livestreaming camera on the whole bed. Yeah, luckily it was just a quick Appointment most the time I was in my mask and it was like take it off do this stuff. I was like put my head down So I just had to show that I was there. I didn't really I showed from like here up And all my all my mouth stuff going on So Robin wants to know is today worse than yesterday? Yes. Hey tj. I miss all you guys Ah, yeah, so happy afternoon. Is it afternoon wherever you are? It's gotta be close or pretty much afternoon unless they're in the hawaii and Then now Yeah, that's that's true. Aren't kind of evening ish too. Yeah Hey, Denet. Good to see you Ah, all right. So, um, we have anything new going on tom anything in the news or anything like that right now Well, you know, we were talking earlier in the week that uh There's a three trillion dollar infrastructure bill that's uh being floated around as uh as the next uh Big spending thing I missed that trillion trillion with a t I mean the last bill With you know related to covet the one that just passed a couple of weeks ago was 1.9 trillion almost two trillion So that's another three last year. They did A couple of bills several bills and it all added up to be about four trillion And I think that you know shared previously that 10 of all the dollars floating around the world were printed last year Oh No, I didn't do that 10 percent of all the dollars that exist were printed in 2020 Wow And we're borrowing all this money is being borrowed. So pass a bill for another Two trillion dollars. Well, we're gonna have to print another two trillion dollars to do that because they don't exist I don't really understand how it works. Who are we borrowing from? Ourselves, I know it's a few they they call it a fiat currency I mean They've got their own printing press. So they just basically print the stuff But the more money they print basically they the theoretically the value is diluted and If the world is wash with dollars, then it takes more of them to buy the same thing When it takes more dollars to buy the same thing, there's a word for that. They call it inflation Hold on to second Good job tj I'm sorry you guys. I'm in a situation over here on my coaching. It's going late So just like let me let me get rid of this call over here. Tom. Um, maybe you could For a second tom Something i'll wait for list to come back and we'll bring her back on stage Yeah, quadrillion. So, I mean similarly, you know, that's it and there's some circles that people are Really concerned that inflation is going to um Be a bigger and bigger, you know problem and even even even even the fed and the treasury have acknowledged that Short one is reasonable to expect that we're going to see some inflation. So You know things like what are you going to be paying for a gallon of gas? What are you going to be paying for anything when you go to the grocery store? What are your what's going to happen to wages? Um Kind of get in this situation where it takes more dollars to buy the same thing then You know at some point from you know running our business standpoint We need to be asking well How many more dollars are we going to be having to ask our clients to pay for the same service that they're getting today? that's kind of Kind of the given in in take of it, but the upside is the economy is Supposed to be growing at the fastest rate. It's grown and In many years, I guess by by some estimates, you know, uh, you know, these are all projections at this point but but but some of the Some of the banks are or even projecting that we might see double digit growth rates and in the economy and Some quarters this year, which is just crazy Which means that there's a lot of money funding around there out there and the consumers are feeling good and they're spending money because they've got money and They very well might be more inclined to take a rate increase today than what they would be in years past because they've got the money to do it, right? So Um, it's not necessarily all a bad thing. It's just a matter of, you know, how we react to it and and and running our businesses and there is a a real I guess the takeaway in all of this is we need to be taking a close look at, you know, what we're charging for our service Look at the market. See what our our competitors are charging And you know, don't be chasing it, you know, I have the courage to get out there especially a lot of us are supply constrained a lot of us are having a hard time finding the way we need to run our business anyway So in fact the econ 101, you know, if you've got more business and you can handle you aren't charging enough so Take the the prospects or at least the possibilities of of of some real inflation down the road That was really good time to be taking a look at what's going on in your marketplace and asking the question I'd be raising my rates In terms of new clients in terms of the quote Well Yeah, I think that we're all kind of running into the issue of labor Which is why we're having the call that we're having today, right? Why i'm doing the presentation that i'm doing today Uh, we're we're struggling more with labor than anything How isn't that what you're seeing everywhere tom? Oh, yeah, definitely. Absolutely That's what i'm hearing too And i know is you're very quick to to to remind business owners and rightfully so that You know why somebody wants to work for you and be a long term, you know, you know team member Is about a lot more than just how you know much they're making per hour How much they're making per hour does matter to especially if prices are coming up People are more for our than you do it is a consideration And I would say right now much more than ever before That that's been my experience You know for years, I have always said that you know the the money is The last of the things that you need to be looking at not so much now Not not so much today, you know, these times are different And for a lot of different reasons with the money free flowing You know with there being how many trillions of dollars out there People just sort of have this idea that yeah, I should have more money You know, I deserve more money. I need more money. I should get more money And it's been building since before COVID when people were, you know, really hitting that minimum wage and Really thinking that we need to raise our federal minimum wage and state minimum wages are all going up Everybody's trying to hit that $15 mark and So it started there Well, I'm hearing some feedback. Tom. Are you getting that? Is it bothering you? But when I talk I hear it Okay, I only hear it when I talk. So how about you guys? Do you hear it when we both talk? Yeah, that or maybe hopefully neither. Yeah, that'd be great if none of y'all hear it So, you know the money consideration has been different. We've been priming our Our people to expect more money We have been and and not us individually as business owners But our country has really been sending the message that you need more money Everybody needs more money. You need more money. You deserve more money. So it's a different time right now And and actually Tom, maybe we could should go ahead and get started with Presentation today And just talk about some of this stuff. So I I have a modified presentation from our foundation stuff But first let's talk about The schedule for the we've got one more day and one more week And i'm really excited about tomorrow Tom I told you a little bit about what's going on right with Tina I'm tj says he's hearing a little bit of feedback on both sides Are you do you have anything wrong on your side? Liz where maybe you're getting sound from two places I have so many things going on right now Yeah, I have my speaker. Let me see about my microphone My system is kind of the same way it's been for a while I can't hear you I don't hear anything. I would think that was a no then So I tried to turn off my microphone. Okay. I turn off my speakers Let's go with it. Let's go with it I'll be able to hear you. Yeah our plan for tomorrow was to do a zoom call and to Do a different game with a cleaning theme but have participants and we'd be streaming it So if you didn't want to be on the zoom call, you can still watch it, you know Here on facebook the way or or youtube the way you normally do but an opportunity And one of the things that you want to know about being you know A business owner in the business world is you want to be opportunistic You want to keep your eyes open and when an opportunity falls in your lap You want to be prepared to do something with it? You want to recognize that this is an opportunity and be willing to change Whatever your plan was to pursue the opportunity that presented itself to you So this came to me last night with an opportunity that was too good to pass up So that's what we're going to do tomorrow. Do you want to explain what that is? Sure. So we're going to have tina on and So I don't know how to pronounce her last name, which is why I wasn't doing it. I haven't heard it from her I'm going to say petty sir v But I have no idea if that's what it is and we'll hear from her tomorrow exactly what it is She's up. You can see her name. Hopefully on the screen there and If you want to find her on facebook So that's why I really wanted it up there for y'all to be able to see though. Whoops. Goodness Get away No, I'm Just messed up my whole screen here All right, I really wish it was looking good from my side, but I'll I'll suffer through I guess um, okay So we're gonna have tina and she's going to be talking about increasing your average ticket price, which you know on the On the surface doesn't sound like anything all that exciting But we're going to be talking about increasing your average ticket price by a material amount um anywhere from 30 to 50 dollars and remember what we're saying here is average ticket price What what are you seeing tom? Why are you laughing? No? I'm good Nothing Okay, I I feel like I'm missing out on something really cool, but Okay, you just dropped your screen share there. I'm good now. Can you see my screen? No Okay Share share screen share screen There you go. All right Goodness gracious. Ha technology Anybody shocked that lisa's struggling with technology? No All right. So anyway, that's what we're doing tomorrow. We're gonna have tina and she's gonna tell us about a brand new strategy You may have heard about a version of what she's going to share But not in the way that she's going to be sharing it and it's super exciting Tom you always call this. Um, you always say that we're calling in audible What is that? I hear you say that all time, but That's a sports thing. It's a football thing where You know like between every play and in football the whole team kind of gets together in a huddle and decides Okay, this is what we're going to do this time Yeah So they break the huddle and you know, they go up to the line and the center's getting ready to snap the ball And the quarterback looks around and if the defense is doing something different than what they expected He can call an audible right there at the line when he's like, you know calling his signals He'll say something that tells all the other players. Okay. We're not going to do what we just said We were going to do in the huddle. We're going to do something different Basically changing our minds because of What we're seeing on the fly. Yeah Needed here. All right. Cool. Well, I I've always liked the term and I knew what it meant I just never had an idea where it came from. That makes sense All right, so that's what we're doing tomorrow And then of course we're off on Friday and then next week We have Derek gonna be on with sales is a teachable skill So he's going to be talking to us about You know, what does that mean? How do you teach it? Because a lot of times people think sales is You just have to find A good sales person and if they're not a good sales person, they never can be a good sales person But he's going to show us how finding the right type of person Is what matters and then you can teach teach the skill. So I love that and what are you going to be talking about tom? I'm going to be talking about uh, high frequency recurring revenues going to kind of tie into uh What Tina's going to be talking about uh tomorrow. I'm kind of excited I'm excited for a lot of reasons to hear what she's going to be talking about But um, the whole idea is to maximize the lifetime value out of every client And this is going to be talking about, you know, we're going to talk about the math behind it We've done that before but just kind of get everybody on the same page and then talk about the strategies In tact that you can implement in your business to make it happen All right, cool. And I'm wondering if your presentation is going to change between tomorrow It might right and tuesday. So i'm interested Call in audible. Yeah another one All right, I am going to be talking about controlling your quality standards. Uh, so Everything is different right now. You guys know that we're having to change up so many different things But one of the things that we really want to be able to keep sort of steady for our customers is That we're meeting their expectations. What are they expecting from us and the quality that we've been delivering and how we're going to continue delivering that So that's what we're going to be talking about there. Um, we also have one here that tomorrow's I mean next week is national cleaning week tom And I think that you found that somewhere, right? Yeah, jannis basically shared that with me. Um, you know, she's a wealth of you know Knowledge about things that most a lot of us might not track and she Sent me an article actually the origins were from issa issa and now that uh that week is a national cleaning week Ah, are you doing anything for national cleaning? You know, I I should probably start thinking about that since it's going to be here before we know it But uh, I don't have any plans as of yet I don't either but I really love that both of our birthdays are in Do you think maybe they planned it that way when they were like figuring out what week do we want to pick? I'm sure of course Ah, I think that's hysterical tom. Yeah, no, I don't think so But I do like that our birthdays are both in national cleaning week. It seems apropos to me Yeah, I have no plans if anybody has any plans for national cleaning week share them I would love to know what you're doing All right, so let's see. I think I can manage my power point now. Is that right?  All right. So, um, we're going to be talking about um, improving recruitment To improve retention now I'm talking about um Improving recruitment, but we're going to be talking about a lot of stuff that isn't Just about recruiting. It's about this time frame though So I saw this quote I was doing a search for something. I don't even remember what and this quote popped up for me from shrm and they were saying how um Recruiting is the top hr concern in 2021 You know, I have never seen that from shrm. Have you tom usually they're talking about culture and It's more about that than recruiting Yeah, I mean it it does say something for them to lead with that because You know I guess from an hr standpoint that the prevailing philosophy is if you are an excellent employer You don't have pro recruiting problems because everybody wants to work for you and nobody ever leaves you and you know, it's If you have a recruiting problem, that's a symptom of other things Right, it's a bigger problem That that's always been the message, but not so much right now y'all They're saying that everybody it's going to be struggling next or this year in 2021. I'm like, oh, I believe it For anybody that's in the cleaning business We believe it don't we She's saying I love to offer a special value pack for new recurring clients. Yep Guess where you want to be tomorrow? Deneat? Not like you're not always here anyway Yeah, you're gonna hear a different spin on this. I mean, this is really unique truly Yeah, so be here tomorrow. All right So we're going to be talking about today Uh So it talks about 12 strategies and on the 12 strategies We're talking to be do and have today. We're going to be going through b and do we're not going to be doing have so much We'll we'll be talking more about that in foundations But the b strategies are going to be be active Be persistent be flexible be appealing. So these are the four basic b's That you want to be thinking of of how you want your company to be and how you want to be in your company And then for doing you're going to we're going to talk about in evaluating Strengthen the core Use data and then reduce friction. Those are the The eight items that we are going to talk about today The other four though are around Things that you want to have even though we're not going to be able to go into this today You want to have strong bringing so i'm just going to give a quick Um explanation of what these four are since we're not going to be going into them today Have strong branding know about your company and make sure that the message that you're putting out about your company Is very consistent And has a really strong message and that it's all it's all over the place All right, so get that branding out there and then have a A good sales pitch and a lot of times we don't think of sales pitch When we're thinking about recruiting we're thinking about sales pitch when we're trying to bring on customers But in 2021 you're going to need a sales pitch You're going to be needing to sell your company and sell your job And then um another thing that you're really going to want to be focusing in on having in your company over this next Short at least short amount of time is diversity diversity is a big deal right now and There is not a lot of tolerance out there for companies that aren't embracing diversity so if you Don't have a lot of diversity in your company It's an opportunity for you to to bring that in and when i'm talking about diversity. I'm not only talking about um What am I trying to say here? I'm not just talking about nationality or race or gender or I'm not talking about any one thing. I'm talking about all of the things Have diversity in as many different areas in ways as you can and then safety practices I think this is kind of a given we all understand why safety is going to continue to be important in 2021 all right So You agree with these time even though we're not really going to chitchat about them too much today. Oh, absolutely. I mean there's a lot of you know Safety is no brainer in diversity. Just just by the fact that it's part of your strategy. You're casting a bigger net, right? Absolutely. Absolutely All right, so talking about being active. Uh, I said we're going to talk about um be Have the things that you need to be right now Active and when i'm talking about being active it's really easy to fall into this place of Just doing the same old thing that we've always done And a lot of what you're seeing on here kind of looks like that too, right? Um indeed google facebook craigslist. How how is this being active? What's different here? but did you know That indeed has a special functionality where you can go into indeed and you can search out People's resumes.  You're the one that told me about it. Can you explain how it works a little bit? Yeah, you can search on keywords. So you can be geographic here and everybody who's got the word cleaning Or or or made in their resume And you can even search on multiple terms like if you're looking to hire a supervisor you can look for the something that has both the word cleaning in supervisor at it and You'll be surprised that the number of people that will come back to you to you You'll they'll basically show you you resumes and it gives you the opportunity to reach out to them It doesn't give you A lot of information about and you can't call them directly But you can reach out to them through indeed And pitch them on hey, you know, we've got a position looking at your resume.  They're not actively these are called passive candidates That they aren't actively looking for a job or looking for a job with you But they make them so, you know, they're they're out there and if you can find them and Sell them when we're talking about selling sell them on the idea that that you've got a job that's better than the job that they have then You know, arguably arguably you're going to get the highest caliber Of candidate that way And and flip that activity So we are used to putting out an ad and then waiting Sitting and waiting for people to apply. But why you don't have to wait There are other things that you can do that Be active you can go in and search out people now in the past. We have said things like You really want to find people that are working. I think we talked about this with derrick earlier in the week, too You want to you want to be hiring people that already have jobs right trying to get them from jobs And having them of course give you give their notice and then bringing them on But nowadays we are going to be finding more people who don't have jobs just because unemployment is so high And there are so many people now without jobs. So the the old the old thinking of the 2020 thinking Of hiring people with jobs is different in 2021. So it's just the first thing that you're going to notice All right, the next thing about being active is have you guys heard of google for jobs? So there is just like google search. There's google for jobs google it y'all you can go and You can google How to find people for jobs It's amazing if you don't know about it thumbs up there right now. He's like what? So google for jobs.  All right, facebook when we're talking about Um marketing on facebook a lot of times people Say this to me. Well, I don't really get anything from facebook. I I put an ad out there And uh, you know, I don't get anything or I hear I can't stand any of the people that I get from facebook. I get a ton of people coming in from my ad But nobody I want to hire. All right So first off not you the first thing is Don't just put an ad in that's not the only thing that there is to do in facebook Think about groups. What are some of the different groups that you can go and find first? There are a ton of groups that are looking to Um connect you with people Look search for jobs jobs in my area jobs. Whatever your city is jobs olympia like for me Search for that. What other people are looking for jobs? How about students? Look for the group of Your local community college, right in my area south puget sound group They have groups people that are looking for jobs there and people that go to that school and they're interested in talking about stuff Having to do a school So look for other ways to use facebook Don't just place an ad and i'm i'm not saying don't place an ad I'm saying don't just place an active be more active than that So I said two things. I have great luck posting jobs in his fanatic groups in my area. Yes Good job Excellent. I love that. That's being active. That's doing something else something different Yeah, go ahead tom And the other thing that you want to do at facebook because you have the one of your other slides about the branding Yeah, facebook is an excellent way to tell the world what an awesome employer you are Absolutely, so if you've got posts showing your your your team members having a great time and You know, that's in its perspective the whole passive candidate thing where somebody's going through facebook and in a lot of times It's not a matter of getting them to respond to a direct ad. It's a matter of wow They look like if they're having an awesome time over there at american made I think I would have more fun there than I would in my current job and they're likely to seek you out yeah, so take those opportunities to Do do something think about what you can do And not what you can do and not what doesn't work and what won't work think about what might work What can you do that's different? So I said there were two things one was Go to groups look for something different also Don't get stuck in your thinking whatever it was that ads don't work. I never get anything Stop that thinking or I don't get anybody good from facebook Stop that thinking too because what was true in 2020 may not be true in 2021 At least check go and do something and see if it is true. All right, same thing with craig's list Did you have something tom? Yeah, and any other part of that that thought is and what works and what doesn't work we gotta make sure that we understand our expectations from uh From a quantified standpoint a math standpoint, you know, you run a campaign and You know, maybe you've got nine candidates and only two are qualified and you would say well, boy, that sucked that didn't work And well, I don't know maybe the other campaign you ran you had nine candidates and only one was qualified So when you went from one to two that was a hundred percent improvement, right? That translates into You know getting twice the production twice the outcome down the road when you look at your workforce You know a month and a half from now in terms of how many cleaning professionals you have So I don't think there's any silver bullets in any of this where it's just easy and You know fish jumping in your boat A lot of times the superior solution Still looks Like it's not that awesome in the whole scheme of things, but it's superior Given your next alternative. So you need to look at it in the context of well How were you doing versus how well is this new thing compared to the old thing? Well, I really love your example tom of going from two to one One to two 100 percent improvement, right? That's huge. That that makes it sound so much better than just one to two But typically we're only looking to fill a couple positions. Yeah, and we're killing ourselves doing it So it's not like it you're having to replace your whole workforce You're trying to fill a couple positions but you're burning a ton of calories. So that marginal improvement doesn't look like much but It you know, basically you've cut your work in half if you're able to go from one to two Absolutely And I love do you see this post that rachel puts on here? This is a great example of being active She saw a girl in a mom group about trouble in her marriage working nights as a waitress She reached out to her. She's got an interview. Bam All right, that's being active. That's looking for your opportunities looking for your next applicant That's that's a great example rachel. I love that. Thank you Uh, so some look at new places for you now. None of these places are new Is it recruiter? It's not new linkedin. It's not new I'm sorry after you hire that girl you get to her to do a testimonial for you a video Explaining how your cleaning company saved her a marriage and then you can put that on facebook Oh my gosh, that's even better. That's genius tom. Yeah, that's great rachel. You heard that right get a video. I love that All right, so New look for a new yeah, I love that idea. I'm like when you make that video make one for me Yeah, we'll we'll send you like a list of like 20 cleaning companies and just Send it out to everybody. We'll send you everybody's shirts all right, so new places think of The the old solutions can be new again. So zipper cruder linkedin local. What can you do locally? Are there networking groups that you can talk to are is how about the chamber? Any classes that you're taking? What what who else can you reach out to locally? all right If you have any questions y'all put them put them in the Chat here And we'll do our best to hit them. All right. The next thing is be persistent So one of the things that we are not good at is And when I say we I'm sort of talking in the general we I hear this all the time is That we're like, well, she didn't she didn't follow up. This person didn't show up Hit her again hit her up again. Who knows what happened? I don't know Right now. We can't afford to be complacent y'all. We need to be persistent. So When I'm talking about frequency put Recruiting on your schedule put it on at least daily it needs to be on Someone's schedule daily and if you have a recruiting somebody who does recruiting needs to be on more than daily They need to be following up with people On a regular regular regular consistent basis keep on going And when you say follow up, I think we initially Think about that is well, I've got A candidate here and I can't get them to answer an email or a text or a phone call, right? Okay, so that's one way of following up But even after you contact that candidate and even after you do a phone interview and after you come to the conclusion Yeah, I really want to hire this person. I don't know. Maybe at that point you want to do a second interview Maybe you want to do an in-person interview or like a zoom call or something You need to be persistently following up and let them know what an awesome company you are How excited that during the next step of the process and this is how it's going to work And by the way, these are the 10 reasons why, you know, we're an awesome employer and we'll see you next Tuesday and send them a rock reminder on We've got a you know an appointment on Tuesday Keep following up and if their first start date is the following monday be following up with them great You're welcome to the team. We're so excited. Your first day is monday Remind them sunday night that their first day is monday Yes, yes So you what you heard from tom is no matter what he just keeps going right? You need to do the same thing Keep going keep hitting these people with messages from your company to the point where they They can't not show up. It feels too uncomfortable to not show up to not be there for you. So More more more follow up and then follow up again And if it falls if the person falls through your cracks for whatever reason, don't just Eliminate them from your list In 2021 we can't afford to be eliminating people From our lists entirely. We need to hold on to them. We might still never get them But we can't really afford to just Mark people off Okay The next thing is be flexible Wow Sometimes I think cleaning business owners are some of the least flexible companies And and owners that I've ever seen and we just sort of get in this Mindset and we get into this rut of this is the way it is. I heard from this very successful person That this is what they do and so that's what I have to do Know y'all all the rules out the window remember SHRM says Number one challenge in 2021. It's going to be recruiting. You need to be flexible So if you're not doing zoom calls start or at least think about starting can you and if you're like I can I don't know how it's too hard. I won't be able to connect Find somebody who's doing zoom calls and find out how they're making it work Learn from them and maybe do zoom calls. Do you have to do all of this stuff? No But what can you do again back to the message of what can you do? How can you do something more? How about if you're doing zoom calls you've been doing them maybe since last march, right? Maybe you want to switch maybe you want to switch to in-person interviews now All right. Maybe try something new again be flexible. How about group interviews? Have you ever done group interviews? You're like, I have no idea how that would work I don't know how find somebody who's doing them. There are four million facebook groups out there y'all Hit up one of the cleaning facebook groups and ask them anybody do group interviews How do you do it? How does it work? And don't listen to the people that say, oh, no, they never work I've tried it. It doesn't work. Listen to the people that say it does and how do they make it work? About things that don't work There's two parts to things that don't work One part is you know the idea the concept and the other part is the execution And a lot of times we confused the two that we didn't get the result we were looking for That doesn't mean it's not an awesome idea. Maybe it was also my idea that just wasn't executed very well Yeah, absolutely I'm not sure that I want to say most of the time because I don't have any kind of data around that But in my world when I'm not getting the results that I want the majority of the time It's my mindset. That's a little wonky. I'm I've already decided it's not going to work. It's going to be hard I don't know how you know blah blah blah Sometimes you're just you know busy or distracted. You don't have the right person on I mean there's a long list of reasons why the execution would go sideways You really just didn't do the preparation work to make it work. You didn't you didn't try hard enough Didn't try hard enough your persistence wasn't there. Absolutely. I would agree with that All right, so how about open interview days? I know a lot of people have a Or I know some people that have a lot of success doing this Every Tuesday and Wednesday are open interviews from nine o'clock to noon Show up will interview you on that day. Sometimes they don't Yep, same same tj. I'm with you right there If it doesn't work for you great pick something else How about be flexible with your requirements? If you have always had these six requirements Can you modify them? Can you get away with only five or four or three or two or one? Do you need all of those requirements be flexible with your requirements? One of the places that you can be flexible is looking for people that have worked in restaurants in the past A lot of people have said that's not a good industry They're so used to making so much money in tips that they're not happy in our jobs But right now those people don't have jobs a lot of those people don't have jobs at all and they would be Happy to have a job and hey y'all we do get tips and actually if you're with made central You know you have it easy have it set up so that the tips are coming in at fast and furious so um It is fun at the requirements do or at least they should like change over time because You know the business environment and just you know the expectations of your clients and the expectations of your workforce I don't know maybe even on an annual basis. You'd probably be well served Or at any time when you're having you're you're you're having a hard time finding that the the cleaning professional question you need This is a you know am I ruling out people that I shouldn't be you shouldn't be uh, you know disqualified So Tom is speaking to a little secret here. Yes 2021 is more of a challenge But this deck is not significantly different than it was in 2019 1817 because we always need to be Doing our best in this area because even if we're fully staffed we need better people We need to be looking for options. We need to be able to staff quickly if we get a lot of jobs You know, hopefully lots of works coming in So there are some things that are a little bit different obviously But there are some things that are are very similar to how they've always been in the past All right. How about being flexible around hours and days if you're one of those people that's thinking I can only have full-time people monday through friday I know I need people that are willing to be on the schedule for 40 hours a week Other people are making it work other ways. Some people are able to make it work with employees that only work three days a week. They have Kids that are in school or they have their own schooling or whatever Or they have found ways to have people working half days. Could you do that? I bet you could I'm not smarter than you and if I can do it you can do it How about care.com? Have you ever looked at care.com? Some of those people and those types of places a lot of times independent contractors will Advertise that they're looking for work on care.com, but they're not finding the jobs y'all And if they're advertising for $15 an hour on care.com To probably work for you Why wouldn't they work for you you're gonna be able to fill their schedule They're actually going to have work. They're not going to be independent contractors probably Again, that's that's your business how you decide to handle that But they might come work for you as employees or independent contractors too depending on what you do How about be flexible around if you've always had teams? Can you do solos if you've always been solos? Can you do teams? How can you? The whole point of this slide is what can you do now? What can't you do? What haven't you done? What can you do? Did you have something Tom? Yeah, they just call that you know increasing the size of the consideration site You know giving yourself more options You know, there's some some people that you know, they might not drive but so they can't be a solo But if you do teams then even if you do a completely solo model You might be able to pair that person up with one of your solos and they can clean twice as many homes during the day Yeah, or maybe even more Yeah, and there's some people that just you know want to do solos. It's a lifestyle thing They just want to get out of bed in the morning get their kids off the school Go clean a couple homes and be home for the bus shows up a lot of them are working as independent contractors and would love the opportunity to have Some employer take care of you know, some of the expenses and the hassles are doing the taxes and all of that and Not or you know our vice versa I mean, there's just so many different people out there with so many different tastes and preference and interests the more Flexible you can be in the the the the more people that you can accommodate in your business To make them a cleaning professional and have them clean homes for you the more homes you're going to get cleaned Absolutely, absolutely All right, so this next slide here. I think this is our last b slide and this is b appealing I see a lot of times people are the the first picture of themselves that they put out is How how hard it is this job is really hard We expect all of these things from you They just make it seem like such a bad job of y'all Be appealing So we talked a lot about matter meaning and measure here because those main things matter meaning and measure Those when people have those in their job. They love their jobs They enjoy the work that they do and when we're talking about matter meaning measure just a real quick refresh Is matter just means that they feel like they personally matter To you to the company that they personally matter meaning is That there is meaning in the work that they do that there is some type of intrinsic meaning in this work You can find that and a measure pretty obvious, right? There is some sort of a measure to show them how well they're doing. Are they doing well? Are they not doing well? Give them some sort of a measure are things good not good pretty not pretty whatever the things are All right, so here are some examples of things that you can do around matter meaning and measure news people's names This sounds so easy, but I can't tell you how many times They people don't use They're applicants names They don't even remember them if you can't take their picture get their picture write their name on I get up Get one of those little insta medic cameras for like 20 bucks or whatever People like to have their pictures taken too not everybody but a lot of people do and There are very very few people that don't like the sound of their own name. Who is it tom that says That a person's name is their favorite word in the english language I've heard that but I don't know who to attribute it to oh I I can think of the book right now, but it's it's escaping me. I'll think of it in a minute I'm have a powerpoint presentation, but have a powerpoint presentation that shows how amazing you are If you haven't seen heather gilch cannings powerpoint presentation Ask her to see it. She'll happily show it to you this one organized mom She has a wonderful powerpoint presentation, but you can have one. Why not create a video Create a video of the people in your company So ha Doing some fun stuff being happy smiling clean. Yes tj. Good job. Thank you sir. Yeah, karny That's right Have a video. How about some uniforms? If your uniforms are ugly or uncomfortable or in short supply or stained or old or any of the negative things Fix that get that fixed because people Need to feel comfortable and be able to clean in and feel good about the uniform that they're wearing Feel proud of whatever it is that they're wearing all right cars Your cars can be Appealing to people if they look at the car and they're like, oh, yeah, that's comfortable. It's close if you don't have cars Don't do this one y'all any of these things that you don't have you don't do You don't have to remember just choose pick some at the end here I'm going to have you pick two things. So we think you're right now What are two of the things that I can do? Have you if you're going to have people coming to your office? Okay Have it be appealing it shouldn't be dirty All right, it should be clean At least clean, but tidy neat Maybe have some decorations people in our industry like to make things look good That's part of what they like about this job Is that they're making all of these homes look nice have your office look nice Um appealing again, we talked about the money earlier Tips point out that we do get tips. Do you have a bonus? Do you have a performance bonus? A lot of companies nowadays have performance bonuses Now is the time for those benefits Point them out tell people about them. Do you have fun in your company any kind of fun? Is there anything interesting about your company? Are there any additional opportunities? Do you have a really awesome ladder that shows people how they can grow? Great show all of these things show Everybody how you are the company that they want to work for at a minimum If they are looking at other clean companies, they need to be picking yours If they're not picking yours, why What's so much better about that other company? No, you need to be better than them. I don't care who they are You need to be better All right, we're going to move on to do and well, you know, this is the deal with foundations the reason why it is 70 hours of Education and work is because it's it's a lot. We got to do a lot All right, so when we get to do I want you to evaluate evaluate Everything in your company evaluate your pay. Is it good enough? Is it where it should be? Is it how is it compared to the other companies not just other cleaning companies the other companies that are pulling your Your recruits the people that you want to hire How about benefits? Evaluate them are there in is there anything you can do there change there Your training is it good enough? Is it fast enough? Is it long enough? Is it sure enough? Is it in depth enough? Is it comprehensive enough Does it start soon enough? Does it last long enough? Evaluate your training policies Are your policies designed For the employee or are they designed for you because I'll tell you what if your policies are designed Just for you You're going to struggle you're going to struggle You can have your policies written in a way that they protect you But also are good for the employee where the employee sees that as yes, I love that policy That's great. That's a helpful policy. I like that. I like that. They have a really good strong What's a what's a good policy safety policy? I like that And we're talking about safety program more, but maybe they have some safety policies, right? There is no win-lose when it comes to policy whenever you're writing policies if you're reading it and Obviously has to make sense to you as an employer But at the same time you need to put yourself in the position of your team members And if it doesn't you said, well, gee, I really wouldn't want to be a team member and work under those conditions And if that's the case, then it's not a good policy You need to you you might need to change that up and your policies may have to change in 2021 How about your procedures how you do stuff? Do those need to change? Maybe they don't maybe they do Safety programs same thing your vehicles. Are they in good shape? Are they Do they look good or do people feel safe in them or whatever the issues are around vehicles or how about Whether or not you have them or who's driving them or their vehicles or the insurance Look at everything around vehicles supplies Are your supplies exactly where they need to be and your equipment? Is it exactly what's working for the cleaning professionals? All right, I think we might have time for one more slide tom real quick Real close i'm gonna be quick strengthen the core y'all so the core is The people in your company that are helping you be strong So strengthen the people that are already there a lot of times we focus on bringing out all of these new people But if we don't bring them into a really strong environment, they're just bouncing out just as quickly and these people that are here Aren't aren't encouraging them. They're not welcoming them. They're not trying to get them to stay They're not like glue instead. They're more like rubber, right? so Strengthen your core identify the core who are those people in your company that are the core people Walk around your company Find out what people are saying Survey them find out what they think what they what they know what they care about in your company build Relationships amongst the people in your company and then not all changes have to be large y'all Small changes make a big difference too So I know that we are Really out of time here time, but I just really wanted to hit this real quick.  I think This one y'all Two things what are two things that you can do in your business to improve Your recruiting strategies what are just two things? Believe it or not two things can make a huge difference.  Yes In 2021 we all have to do something All right I was speeding through there there at the end time Is there anything that we want to say last minute anybody have any questions anybody want to share What they're going to do what they're going to change How they're going to make an improvement Anybody Okay, well we're top of the hour We'll be back tomorrow. We're gonna have a special guest. We're going to learn I mean We've been doing this for a while was and rarely do we hear something that I would say is innovative something that We've you know, it's like well, I've heard that before somebody else does that we did that five years ago 20 years ago This is unique. This is unique. This is new I am too so y'all need to be here tomorrow. All right Thank you. See you tomorrow. Bye. Bye


Here's a UML definition for a circle class that's part of a graphics program. It has a color, a boolean that tells whether it's filled or not, and a radius. It should also have a center x and y coordinate, but to save space I've omitted those. And here's the definition for a rectangle class. It also has a color, a boolean, fulfilled, but this time it has a width and height. Look at all the fields and methods that they have in common. What if we were to add triangles, pentagons, and even more geometric objects? That would be a lot of unnecessarily repetitive code. We can avoid that repetition by using subclasses. We can create a class that contains all the common fields and methods and call it geometric object. This general class is a superclass, also called a base class or parent class. The circle and rectangle classes now contain only the items that make them circles and rectangles. They are subclasses or child classes, and they will inherit all the accessible fields and methods from their parent class. How do we implement this in Java? First, here's geometric object. It has its fields, its constructors, the getters and setters, and a two-string method. Here's the circle class, where we use the keyword extends to specify that a circle is a subclass of a geometric object. The only thing that we're adding to the fields is the radius, the thing that makes a circle a circle. The color and filled fields are inherited from the superclass geometric object. We have the constructors, the getter and setter for the radius, and the area and circumference methods, and finally our two-string method. Let's take a closer look at the constructor. It uses setColor and setFilled to access the fields in the parent class. Why didn't we use the fields directly? Since they're inherited, why didn't we just say this.color equals white and this.filled equals false? The reason we can't do that is because here in geometric object they've been declared private, and that means that nobody outside the class that declared them can access them, not even a subclass. Let's compile and you'll see what I mean, and we get errors because color and filled have private access in geometric object. That's why we had to use setColor and setFilled, because those are public in the superclass geometric object, and now it compiles successfully. That's also why we have to use getColor and isFilled in the two-string method. Let's take a look at the rectangle class. It again extends geometric object, so a rectangle is a subclass of a geometric object. We only need to specify the width and height, the fields that make a rectangle a rectangle, and we have our constructors, the getters and setters, the area and perimeter methods, and two-string. Here's a program to test these classes. We'll create a circle and we'll create a rectangle. We'll print them, which will invoke the two-string method. For the circle, we'll get its area and circumference, and for the rectangle, we'll get its area and its perimeter. Let's compile and run, and there's our output. So far so good, but there's still some duplication of code. Here in the constructor for circle, we're calling setColor white and setFilled false, but that's the same code that's handled by the noArgument constructor for geometric object. And here we're setting color to color and setting fill to filled, but that's the same code that's happening in the two-argument constructor for geometric object. Java lets us call the superclass constructor by using the keyword super. In the noArgument constructor, we'll tell Java to call the noArgument superclass constructor, and here in the multipleArgument constructor, we're going to tell Java to call the superclass constructor with the specified color and filled. When you use super, it must be the very first non-comment line in your constructor. Let's recompile that to make sure it works, recompile test, and run it, and it also works fine. We can do the same thing here in rectangle. We'll replace these two statements with a call to the noArgument superclass constructor and these two statements with a call to the multipleArgument constructor for the superclass geometric object. In summary, you can create subclasses by extending the superclass, and you can call the superclass constructor by using the super keyword.