All right, so once again, hello everyone and welcome to today's workshop in today's workshop. I don't actually have any slides prepared though. Let me share my screen. I'm trying a new format today. So today's topic is updating a blog's design and I've called it a informal live stream. And what this is is I am going to take my personal blog and update the design. So I'm going to change the theme. I'm going to give it a fresh look and you're going to watch me do it. So you're going to see me change themes on the site and it might go well. It might not go well. We'll see how it goes. And basically I'm just going to be working on the site here and answering any questions you have in the chat. So I'll sort of explain what I'm doing, my thought process. But if you have any questions, you can unmute and ask or you can drop it in the Zoom chat. And hopefully it will give everybody an idea of how you can update a blog's design without having to pause the site or keep the site live but still update the design. So we'll see how that goes. Does that make sense? Does everybody understand what we're going to be doing today? Laura says very cool. All right. So hopefully that makes sense. And these online workshops hosted by the training team, these are a place where we can all learn together. So I don't know all the answers. So if we have questions, we can help each other answer each other's questions. And hopefully this will be an hour where we can all learn together. M says mad science experiment. Yes. That is exactly what this is. And I will say this is part one. I don't think we'll be able to complete the full redesign today. So I do have a part two scheduled later in March. And so the links in the meetup.com event. Let's see. There's a link to part two here. So do sign up for that as well if you enjoy today. All right. So the site we are going to be updating is my personal site. And I will drop the link in the zoom chat here. That's B sons blog. This is just what I'm using today. We can use any site. It just happens to be my own site. But let me open the WordPress admin dashboard for this as well. The sun is long. Right. So what's this WordPress administration email verification. So, oh, well, this email is correct. You all got to see my email address. But anyway, let's see. So to be honest, this has been a while since I've logged into my site. So I'm just trying to figure out what I'm seeing here. So this here is a advertisement from the jetpack plugin. So I'm just going to close that for the moment. And what you see here now is the normal dashboard of the site. Okay, John, before you begin, can you tell us if you have a reason to update your site? That's a very good question. The reason I'm updating my site is because I am currently using the 2022 theme. And when I use this theme, WordPress, they were still working on the template at the time, the custom templates. And so I tried to modify the theme design on my own, but I didn't have the full power of full site editing yet. This is over a year ago. And so now we have full site editing is pretty much done. We have a new 2023 theme, which uses custom templates and custom template parts. And so I wanted to transform my site from the 2022 theme to 2023 theme, set up custom templates for myself, and just give it a refresh. It's been, I think, a year and a half or more since I used this design. Does that answer your question, John? As a general rule, you don't have to update your site design that often. But for my personal blog, I just want to give it a fresh start. And I'm using full site editing seemed like a good idea here. All right. So yeah, we're going to change this to the 2023 theme. But while I'm working on the site design, I still want to keep this site up and live. I don't want to sort of break things while I'm working on it. So what I'm going to do is I'm going to copy my site content into a staging site. Work on the staging site and then bring the content back. So the staging site is like a testing environment where you can work on your site design and without affecting your real site. Now, depending on your host, your host might provide a staging environment. But today I'm going to use a service called local by lie wheel. Here we go. So I'll drop the link in the zoom chat as well. And what this is, is this allows you to easily create WordPress websites within your computer. So you don't need a server anywhere. Your computer becomes a WordPress server and you can build your site there. So what I'm going to do, this is my life site on the live server. I'm going to export the site, put it into a local site on my computer, work on the local site. Then in the next session, put the data back on the live site. Now to do that, to export your site content. And there are a few ways you can do it. But I like to use a plugin called all in one WordPress migration. I think it's what it's called. All in one WordPress migration. So let me get the link for everyone for that as well. There we go. So this is all in one WordPress migration. This is the plugin we're going to be using. Sushma, will this class recording be available? Yes. This recording will be available and uploaded to WordPress TV in a couple of days. So let's install this plugin. And there are other migration plugins you can use as well. I'm used to this plugin. I've used this plugin a number of times. And I like how simple you can export and import the plugin. So only one WordPress migration that has been installed. So what we do is we come to the new menu item here and click on export. Sushma says, thanks. No problem. All right. So we're going to export site. So we're going to export to file. And the reason why I'm going to work on my local computer is just because I find it simpler than working on a server somewhere. It's just a preference. You can definitely use your staging environment on your web host. There's no problem with that at home. You can do pretty much the same thing as what I'm doing here. I just like using a local environment and playing around and no worry about things breaking on the internet. Mark Andrew says he can update the event chat on Meetup with the actual link when it is posted. Thank you, Mark. That would be really, really helpful. All right.  So I'll click that. And you can see that's downloading here. And while that's downloading, let me open my local. Let's see. Hopefully you can see this on the screen. So what I'm doing here is I've already downloaded this software local. It's a free tool. It's a free tool you can use to build sites on your own computer. So what I'm going to do is I'm going to add a new site. You can see all my online workshops, all the test sites are using my online workshops are on local. So you can see all these sites here. But let me make a new site. So I'm going to create a new site. And this is going to be called March 2023 site redesign. Continue. We can just go with that. WordPress username, that. For the password, just a moment. You can fit any password. This is just for your local install, like local site. So you can set any password. But I have a password I frequently use to my own site. So I'll just add that there. And that's basically it. You just give it a name, give it some login details. And then local makes a site for you. I'm just giving my computer permission. There we go. Right. So here we are March 2023 site redesign. I'm going to start this. And by starring that, it just put it at the top here. So I can come back to it easily in my next online workshop. So this is the local software. This isn't WordPress. This is the local by Flywheel software you're seeing right now. And I like to turn this setting on one click admin. So usually when you open the WordPress admin screen, you have to enter your login details before you get in. But with local, because this is all on my computer, by turning this on, I can click WP admin. And it goes to the dashboard without me having to enter my login details. So that's just a setting I like. All right. So what I've just done is I've exported the content here. So that's downloaded on my computer. And I've just created a brand new website called March 2023 site redesign. So let's open this in a new tab. This is what the site looks like right now. Very simple. And so what I'm going to do is I'm going to import my current site data into this site. So then we can just work on the local site for the rest of this session. So to do that, we need to add the all in one WordPress migration plugin to this site as well. So I'll search for all in one WordPress migration. All right. So we installed the same plugin over here. We activate. So we see the menu item over here. And this time I'll click on import. And so you can drag and drop a backup here to import from maximum upload file size 300 megabytes. And this is at 700 megabytes. OK. So this is the first hurdle we come to. Now to increase maximum upload file size. So what we can do is we can edit the HT access file of this site to increase the maximum upload. So this is where it gets a bit technical because let's see. So I want to go to the site folder. Does local have a dot HT access file? Does anybody know maybe this isn't going to work? Index. Activate. WP config. I think you can actually modify this in WP config. Here we go. Edit the WP config file. So what I'm trying to do here is I'm trying to increase this maximum upload file size to 750. So we can upload this backup file. And to do that, this is the WP only one WP migration plugin help site. And it says how to increase maximum upload file size. One of the ways is to edit the WP config file. I have just opened. There we go. And this is the files inside my computer for this site. And we have the WP config dot PHP file. So we want to edit that. So let me do that. WP config. And we have a few questions in the chat. So let me. Let me see what it says. Oh, let's see. So Laura, the original WordPress dashboard looks different than the new one. Why? I'm guessing you mean this one? This dashboard looks different to this one. And I think that's my host. Let me just close this for a moment. My host, I think my host is WordPress.com. And so the WordPress.com host has sort of colored in the dashboard for me. So that's just the design by my host over here. What you're seeing right now is the simple plain WordPress installation colors. And that's why they look a bit different. Oh, okay. So everybody's been answering. Oh, great. Everybody's having a conversation answering for me. So that looks wonderful. John says a lot of hosts have different looks to their dashboard. Exactly. All right. So coming back to this WP config, we want to increase the maximum file size to 750 megabytes. So let me just copy all that. And this is the WP config file. Let's see. Now, I'm not a developer. So I don't like to go into code and edit stuff too often. But I do know if you scroll down in the WP config file, there's a comment here that says, add any custom values between this line and the stop editing line. So stop editing line is here. So right here we'll paste all the custom values. So right here we'll paste all this from the only one WordPress migration. And we want to change the upload max file size. We want to change this to 750 megabytes. And I'm not sure if this is relevant, but I'll change this just in case, the memory limit, the 750 megabytes. So I've added some code here. I've changed it to 750. I'm going to save my changes. And hopefully that has increased the maximum upload size on my site. So let's come back here. Let me refresh this page. 300 megabytes. Mm-hmm. Local. I think you'll need to restart the server. OK, let's try that. So let me stop the site. All right. So let's close that. Close that. And then let me restart this site. And let's see if this works. Only one WP migration import 300 megabytes. Let me see if I can upload anyway. So I'm dragging the file I downloaded before here. Nope. Close. Let me open this again. Let me just go through and change that as well. 750 for post max size. Stay. Let me close that. Let me stop the site. Restart. Only one WP migration import 300 megabytes. So yes. Unlimited is the pro version of the plugin. So that's that. I've been able to do this. I have a feeling it's because I'm doing a local. Let me look it up. So local by flywheel increase upload size. Let's try that. Maybe local has an idea. Local community. Oh, here we go. Someone else is trying this exactly. How do I increase that? Navigate to the conf PHP, PHP, any HBS update lines to the value you need. Oh, okay. So in the comments here. Robert says, are the lines starting with an at mark comments? No. The line starting with an this slash asterisk. These are the comments. I think at the at Mac, the at mark. It means something in programming, but it's not comments. It actually means something. So I've been trying to update the WP conflict, but let's, let's try something else. Let's try this answer. I've just found on the locals help site to see if this works. So it says navigate to com PHP, PHP, I, and I HBS. So let me open my files again. So we want to go to com PHP, PHP, I, and I HBS. So that's this far. So we will open this file like that. And then let's see post max size upload max file also after memory limit to 512. So max it's max. I think, I think the time I think the past memory limit. Okay. So I think this is it. So let me just go way over post max size 1000. So max file uploads. Is that when you know this person's in post max size upload max file size upload max file size. We actually see upload max file size. Let me let me just quickly. Load. Let me go upload max file size 300. So let me change this to 1024. All right. So I think hopefully this is it. So let me save the changes. John says go big or go home exactly. And because this is my own computer. I know I'm not going to like break something drastic or hopefully not. So I've updated that. Let's let me just call this site once more. Let me stop the site. Let me restart the site. Let's go to here import and yay. All right. So maximum upload file sizes now 1000 megabytes, which means I should be able to drag that backup file. The import process will override your website, including the database, media, plugins and themes. Please ensure that you have a backup of your data before proceeding to the next step. So if you're doing this on your server, then you want to make sure you have a backup of your files there. This is just a brand new blank site on my computer. So I don't have a backup, but that's okay. Let's proceed. And hopefully this works. Okay. So save permalink structure. All right. So now the login details here, because I've imported my external site here, the login details are the same as my external site.  So let me just put my password manager login. All right. So you can see this is on the server. So on the server, it says bsons.blog slash wp admin. And we know this one is my local site because the domain says March 2023 site redesign dot local. So that's how we can tell this is a local site and the other ones, the server site. The dashboard color is also different. So that also helps us identify the two sites. But now when we open this site, we should see exactly the same thing as my site on the server. All right. So something that broken here, probably because of a plugin setting. So let me have a look at that. So permalinks. But so far, I think the import has gone smoothly. So let's see. Let me go to dashboard. So this says you are currently running a development version of Jetpack currently in offline mode. Because your site URL is a known local development environment. So what it is, is when you look at my site, some of these things are cold. And that this is supposed to be my sign up form into email address below. So that's the subscription form here. And that's turned into code because Jetpack, the plugin Jetpack has turned off. It knows it's a local site. And so it's not doing everything it should. But we should be able to just leave that. And when I take the site back to the online version, it should work okay. So the first step done, I've been able to migrate my site from the server to my local environment. And now we can actually work on the site design. Any questions so far? So let's see. That page really held that was really good. We don't need that one anymore. Let's just keep it there so we can differentiate between the sites on the left and the local sites on the right. And can you turn the features Jetpack back on for a true view of how it will look live? Let me see. Let me see if I can turn. Okay, so it says this is specifically for offline local development sites. If you have an online staging site, you'll want to follow the staging sites guide. So it doesn't actually say if I can turn it back on. I think I might just have to update the site on the server to do that. It looks like if my staging site was online, like with my host, then they have a different guide for that. All right, so now to get into the redesign. So for the redesign, the first thing I want to do is change themes. So at the moment we're using 2022 and I'm going to add a new theme. So click add new and then search for 2023. Oh, here we go. So I'm going to activate. And that's it. It's activated. So let's refresh this. And yeah, that's what the site looks like. So now what I want to do is I want to turn this back into this, but in the 2023 theme. So there's one setting I want to check before we start. Not in general, we want to look at reading. So my home page displays a static page. So at the moment I'm looking at settings reading and there's a setting here. Where you can show your latest posts on your home page or show a static page instead. And when I look at why this is this is the live site. I actually show my recent posts on the front page here. I have a blog page. But now with the query loop blog. I'm actually I'm going to turn it. This way. So I'm going to set it so my front page on page shows my latest posts. And I will create a separate blog page. For that. So blog. So on pages place my latest posts. And the reason why I'm doing this is because I've done a couple of template editing in full site editing. And I feel keeping it to this setting makes things a bit simpler. So what we'll do is we'll come to WordPress appearance editor. And to this looks. This looks new. Right. So at the moment my home page is showing recent posts templates. Oh, um. Oh, is this. Do I have Gutenberg installed is that why I'm seeing this new editor. And luggage. Good. Oh, um. Let me temporarily turn that off because that just took me by surprise. I wasn't used to seeing that new editor. So what do you saw right now that is going to be that is going to be included in future versions of WordPress. So that's coming soon. But I am okay just working with the current version of WordPress. Let me come back to editor. There we go. Okay, this is what I'm used to. So on the templates. We have a few templates. This is a home displays posts of the home page. Mark Andrew says March 21st 6.2 should be released. Oh, collect in like three weeks or two weeks almost. So home display posts on the home page. So that's what we want to edit. We want to edit the home page template so that it looks like this. And what I've done is I have a custom header here on for the home page with a menu. But then if you look at my other pages, you can see I have a separate header for the other pages. So this is my life. So I have a different header for the home page and for other pages. So coming back to my local side, what I want to start by is creating some template parts. So the header is going to be what people normally see on my pages, this one. And then I'm going to make a new header called the home header. And that's going to be used just on the home page. All right. We have that. So I want to make the home header look like that. So let's see. I believe I have a cover blog. Select media from the media library. And all my followers are here. Here we go. Select that. And then the sun's blog. So that at the moment this we have a paragraph log. But I actually want to add into it before I want to add the title block site title. All right, because the site title actually already says B sun's blog. And for SEO purposes to by adding the site title block that becomes an H1 header and is great. So this is going to be the home header. So I don't need that to link to the home page. Let's see. And then we need to edit this. So it's in the center. The text is white. We want to make this large three, not five, not eight. That's looking good. And then let's see typography. The font actually looks a bit different. Here we go. On my site. Hmm. Let me see. So font family. I don't have any sense. Sometimes. Hmm. Okay, that looks like it. B sun's blog. That's that. So I'd say the appearance is probably bold. Or maybe semi-bold. That looks good. And then next, this is my tagline. So again, we don't need that. After the blog, we do want to add a tagline. It's like tagline. There we go. And then we'll send to that. Make the text white. Hmm. I think we made that talent. So that's probably what we did again. So typography. Appearance. I want to make that. It's not appearance. And typography. As a decoration. No. Letter spacing. No. No. Letter case. No. Font family. No. Oh my goodness. Where's, how do you make this italic? Appearance. Where is my spacing? Can I not italicize this? Hmm. Might have to come back to that. Aim says, does the color background add a color behind the text? Yes. Yes. I believe you're talking about this one. Um. That would. So if I did this. Like red. It would add a background to the text like that. I don't actually need that. So I'll turn that off. And John says, try command. I know let me try that. And I know. That's not working. Hmm. It feels odd. Like I would, yeah. And no problem, John. I would expect it to be here. So let me come back. So if I go to the header or the site title blog. What's it called? It's called appearance. No, no, that's not what it was. Where's italic there? Ah, it's under appearance. Oh, okay. Okay. I need to scroll down a bit. Click that. I'm over here. And appearance. Yeah, Mark Andrew. Thank you. So under appearance. I was just looking at the bold here, but if you scroll down. Ah, we have italics. Okay. So that's what I want. There we go. Regular italics. And then I probably want to make this a bit bigger as well. Let's try. Oh, that's a bit too big. Let's try to. Haha. Um. Okay. So we've got that. Now, to be honest, the gap there feels just a little too large. Um, so under dimensions. Hmm. That, that gap right there, that, that just feels a little too large. Um, I almost think it's a block spacing. Maybe it's margins. Let me try margins. Right. So that only makes margins larger. If I do that. Bottom. Can you make, can you set minus margins? Like minus 20. Oh, you can. Oh. All right. Oh, did that work? Or did it? Did it replace minus 20? No, I put it back. It puts it back to that. Hmm. Hmm. Um, and if you split the tagline into two lines with that changing everywhere, it's already displayed too. Um, see me like going. Okay. I'm trying to split it. So enter doesn't put it on the new line. Shift enter isn't working either. With the tagline block, it doesn't look like you can turn it into two lines. Hmm. Jean. Laura. Laura says check the top padding of the tagline. Okay. So that tagline dimensions. Heading. I'm link. Top. I make that zero. Hmm. No. Okay. Let me check. Let me see what Jean says. So if we turn these into a group block, so select two, turn them into a group block. And then the lock space. And here we go. What happens when I make that zero? Did that work? It did. Okay. So what I did there was I grouped. The site title and the tagline together. And then in the group block, I changed the block spacing to zero. So, um, that looks a bit better. Now this. Can I make that? There we go. If I make that full width. All right. All right. That looks pretty good. So one other thing is this menu bar. Um, so I think I will want to add that to the header here as well. So under the main cover block. We'll add one more cover block and insert after cover block. And what is the color we have here? I want the exact same color. So I'm going to inspect. And let me see if I can find the color codes. Computer. Nope. Let's see if I go to that shell. Nope. About that one. There we go. RGB 2, 89, 1, 2, 8. So here we'll go to RGB. It's 2. Oh, um, that's definitely not the color I want. Let's come back here. Um, RGB. So it's 2. Okay. And 89. And then 1, 2, 8. There we go. That's the color we wanted. Um, and then here we will add a navigations block. At the moment. Here we go. So home about blog contact categories. So the menu already exists. So we just need to set to primary and that looks good. Um, but then we want to sort of fix this up a bit. So it looks the same. Let's see. Um, Typography. So let's make this a bit larger. Three. Oh, that's, that's too large too. Yeah. Two looks a bit large as well. One, no 1.5. Maybe let's go with 1.5 and block spacing. Uh-huh. Okay. That's probably what I have over here. Yeah. So split apart a bit. Um, topography. Do we have appearance? Because I think I've got it a bit thinner. So let's make this. Um, light. Right. That looks pretty good. And then the cover blog. Let's see that feels way too large. So. Min and unheight of cover. If I said that, does that shrink it? So if I go 200. Well, yeah, that looks like it might work. 100 pixels. Okay. Maybe if I go. That looks pretty good. Um, and then here. All right. So we want to get rid of this white gap. To do that, let me try. What Laura or Jean actually said before. So let me group the two cover blocks. Let's see. So the first cover block. Second cover. Let me group those. Does this work? Turn that off. And then I want to change the block spacing. To. Zero. That actually worked. Let's see. Let me save all this so we don't lose what we've been working on. That looks pretty good. I think. That. This one's blog. That doesn't look too bad. Um, So we've just made the home header. Custom template part. So what I'm going to do is I'm going to add this to the home page template. At the moment. This is what the home page looks like. And we're going to replace this header. With the new custom template part I built. Come here. Um, So we'll remove the current header, remove header. And instead we will. So before. And we will add a. Custom. There's a template part template part. Here we go. Template part. And we will choose the. This one. Alright, so let me save that. Let me refresh this page. And that looks. Almost almost good. Um, so. What's happening, but what I'm worried about is this white gap at the very top. So that is probably something I want to remove as well. So what is this white gap? This white gap. Here we go. Is. Padding. On top of. The main page. So it's not, so I'm looking at the code here. It's not actually padding on the template part. It's on the actual page. Hmm. Hmm. Hmm. How could I remove that? How much padding is there? 28.8 pixels. Yeah. Yeah, Laura. This is easier to say than to type it in. Yeah. Yeah. Somebody had told me about taking the, the, um, a little toggle and like moving it over and then moving it back instead of using the numbers. This here. Yeah. Yeah. So, and then. There's that. Hmm. Yeah. I know what you're talking about. Like sometimes that can do leech. Head up. Head. Elements. Additional classes. Hmm. Maybe I should ask Google removed. Yeah. Yeah. The top of. Um. WordPress page. Could it be in global settings, John? Oh, that's. Okay. So, so let me, let me do that. Let me look at global settings. So global settings. Let's come over here. Layout. It's probably where. Um, adding. Let me, let me move that with the back. Let's see if that works. Let's, let's save that. Come over here. Fresh. Oh, it did work. Thanks, John. That's exactly what we needed. Okay. So what I did right now is we saw some white gap at the top here. I went into global styles. Uh, layout. And then change the top padding to zero. If you leave it, it looks like it's on zero. Um, but it actually isn't. So what I did was what Laura said, if I moved it up, moved it back, made sure it said zero, save. And then that removed the gap at the top. All right. I am extremely pleased with how that header looks. M was that header section created. Inserted as a div or as a header. Um, the answer is a header. M. And the read. So I can, I can show you the code. Um, inspect. And. Here. Um, So it's a header with the class WP block template part. Um, and that's because I created it with a custom template. Um, so when I made a custom template part, it asked me, is this a header or just a general custom template part. And because I selected header, it created it as a header. I don't think that's the case with my current site. It is what it might be. Oh, well. Um, okay. So that's that. Let me just check to see what this looks like on mobile. Beesons blog. Um, I mean, we could work on that a bit maybe next time, but it's pretty much what my current site looks like as well. That's okay. All right. So we are at the top of the hour. Um, so basically what we did today was we imported my public site into a local environment. So we can work on it. And we created a custom header template. Um, and we created a custom header template. Um, and then we changed the theme. So we changed the theme from 2022 2023. And then we recreated the header we see on my current site. Over onto this new site. To be honest, I'm very happy with the progress we made today. We shared information. We all gave each other ideas. I had to look online to find some answers. Um, we looked up a couple of plugins. Um, we looked up a couple of plugins. Um, we looked up a couple of plugins. Um, I thought it was very good. Um, does anybody have any final questions or comments they want to make before we close off this session? M says a group mad science experiment. That's exactly what this was. And hopefully everybody else found it enjoyable as much as I did as well. Um, so obviously we still need a part two and we may even need a part three to get through all this. Um, so, um, please do sign up for part two. This is, um, a couple of weeks out. It will be on March 24th, um, but it'll be the same same time as today's session. I will drop a link to part two in the zoom chat here. Part two. Um, Jean, look for the part two. Mark Andrew. I loved all the input really good. Robert. Great. I can use this. Thanks. Oh, I'm so glad you could use this. Um, that's, that I really enjoy hearing that. Um, nice experience. Thank you. Um, so you just have to save the URL to the local build. Or is there a way to find it? Save the URL. Hmm. The URL you see up here. This, this URL is for the local site. Is that what you're talking about? Are you talking about something else? Yes. Once you close the local site, how do you find it again? Oh, okay. Um, so what it is is local. The software local, the free software. Um, this saves the site here. So what I do next time is I open local. On my computer. Um, and then I just click, um, start sites at the moment. I will stop the site. So that then sort of closes the site, um, in the background. And next time I'll just click on this one. Click on start site and we can start right back from where we left off today. All right. Thank you everyone for joining. And I look forward to seeing you again, um, in the next online workshop. All right then. Bye. Bye.


I'm Samyukta Dawadi. I'm a graduate student from Nepal. My main reasons for coming to Fairfield University was outstanding quality of education and how close it was to New York City. But after coming here, I met some really amazing people and that has made my experience even better.


So in our last video, we talked about the top five hard skills that all engineers should know in order to become a great engineer. And today we'll be talking about the other half, which is the top five soft skills that all engineers should know. And believe it or not, soft skills are actually an important and crucial part of your toolbox of skills in order to become an exceptional engineer. The reason for this is because we as engineers, we actually don't work in isolation. Typically, we work with a stakeholder or a bunch of other people. And so in my experience, for example, as a mining engineer, I have to work with a whole bunch of other people, such as people from GeoTech, people from feud services, people from operations, maintenance, reliability, and occasionally we sometimes even have to work with people that don't have a technical background, such as from finance or from regulatory. And that's when it's even more important to have these excellence soft skills. And so let's go find out what these top five soft skills that all engineers should know. The first soft skill is problem solving. And so hopefully this is not a big surprise to anyone, because we as engineers are hired to solve problems. Even if you have a problem that you can easily solve, you should always apply those analytical thinking abilities to look for ways to optimize the solution. One thing to know is that problem solving in university versus in the real world are two very different things. In university, you're given the problem, you're given set of facts, and you're given the questions. So all these things are clearly laid out for you. Whereas in the real world, you may often just be given the questions, but you may yourself have to go find all the supporting information that goes into solving the problem. And sometimes you may even need to ask clarifying questions about what is it actually that the client or the customer wants you to solve. And so the second skill is critical questioning. I think it's important that you have a critical eye to always be asking, why are we solving this problem? And secondly, if it's worth the time and effort to go solve this problem, sometimes you may be asked to do things that are nice to have, but you're still investing time and effort. And that's really when it's so important to know exactly why you're being asked to do something. And another example is for engineers that have field exposure. It's whenever you're going out into the field, you should always be thinking with a critical mind and ask those questions about, is this really safe or is this actually the way that we're supposed to be doing things? And so because people are often subjected to complacency, sometimes people in the field may forget to do something or they may leave out a step. And that's when it's so important for you to go ask those questions. And to see maybe perhaps there may be a safety issue related to the work that you're doing, or maybe they fled out a step in executing their job when they're building a structure that you've designed. I've done to find these improper procedures can be a great way to prevent a safety incident or operational inefficiencies. The third skill is presentation, creation and delivery. And so as I mentioned in my last video about the top five hard skills that all mining engineers should know is that you shouldn't know how to use Microsoft PowerPoint, but using Microsoft PowerPoint effectively to create engaging presentations is a whole other skill set for mining engineers. For example, you put a lot of work into the design and scheduling and sequencing of your mind plan. And typically the last step is that you need to inform the designs and the schedules that you have just created and presented to an audience of your stakeholders to get their buy-in. What you have to do is you have to take a lot of complex technical information and distill it into simple information that everyone can easily understand. And typically you'll want to skip out all those complex little details and just highlight the most important part that matters to them. And that itself is an art, is a skill that you have to master. Typically charts, graphs, pictures, or even videos are the best way to convey those information. And typically the less text it is, the more I engaging it will be. And instead of just having a one big chart, you also want to use callouts to identify the critical message that you're delivering. And so creating effective PowerPoints and delivering that it's a whole other different skill set. And of course included in the presentation delivery part is that you need to effectively communicate your message verbally. And so that communication part of clearly articulating your message is another crucial part of the presentation delivery process. The fourth soft skill that all engineers should have to master is leadership. And so in the perspective of a mining engineer, you're running this very giant complex operation. And as a mind planner, you're privy to a lot of these information inflows and outflows. And you can in a way think of yourself as a mastermind behind this mining operation. And as a mining engineer, you can show leadership and initiative by identifying a problem and providing a recommendation to solve it before they're even brought up by other people on a similar note. Leadership doesn't just apply to your work in the office, but it also applies to whenever you're out in the field. So for example, if you notice something is wrong in the field, you can take leadership by identifying that something is wrong, bringing it to the attention of the supervisor and providing some solutions to solve whatever's wrong in the field. And that, again, will help address safety concerns and potentially operational inefficiencies. And again, these are two things that are highly valued by management. The fifth skill is negotiation and conflict resolution. As mining engineers, we're developing these highly technical mind plans that takes into account a lot of considerations. And sometimes you just can't be able to satisfy everyone and make a plan that solves all the concerns because there's just so many constraints to a mind plan. Sometimes what you have to do when you present your mind plan is to negotiate an outcome that is okay with everyone that everyone can assess. Sometimes you have to take a loss somewhere in order to satisfy someone else's concern somewhere else. And that's a very difficult skill to master, but it's definitely one that would very likely come up within your career. And so to summarize the top five soft skills that I think all engineers should have is one, problem solving, two, critical questioning, three, presentation, creation and delivery, four, leadership, and five, negotiation and conflict resolution. None of these soft skills are easy to master. And in fact, I think they can take a long time for you to get good at. But the best way to get good at these skills is to practice them daily, seek mentorship from other people, take courses about these skills if you can, and read. But I think that if you're able to master these soft skills and of course adding in the hard skills, you definitely become a very effective engineer and you'll be able to do great things within your career and make a whole lot of money. That's it for this video. Thank you so much for watching. And if you have any video suggestions ready, yes, feel free to leave them in the comments section below. And I'll consider making a video just for you. And thank you very much and we'll see you next time.


So, thanks for showing up. Our talk is called Being a PTL, the Good, the Bad and the Ugly. I see a lot of previous PTLs in the audience, so that's good. Hopefully you guys can actually just get a lot. I mostly just want people to laugh in this session. I like stories. This is going to be story time around the campfire, so I'm glad they just closed the doors. So, thanks for joining us. I already got one. Okay, so the presenters are, this is Matt Readiment. He works for Huawei. I'm Steve Martinelli. I work for IBM. This is Armando. Oh, that's very good. Oh, Martinelli. Come on. He works for SUSE. So before and after, we figured we'd break the ice about what you, an accurate depiction of what you look like before taking on PTL and then doing it for three times. Just as a precursor, Matt has been, this is his third time as the Nova PTL. I've done it for three times for Keystone. Armando did it three times for Neutron. Look how sharp I was. So again, it's a very accurate portrayal of what looks like and kind of looks like that.  And still youthful and beautiful. We were thinking about putting up a third preacher there. That kind of shows myself and Armando with, you know, Obama jet sking, or. So okay. The joke's over. All right. Perception versus reality. How people perceive the PTL versus the reality of the situation. This was very much, I wrote this section based on how I felt when I first started working on OpenSec and working with Dolph Matthews, the first Keystone PTL, and I felt he was like Superman. But I put Iron Man up there because he's cooler. So I felt like the PTL knew everything about the project. He figured out, he made all the decisions. He was the best coder on the team, and like a super reviewer, all was up there on Stackalytics. Number one, PTL. Most reviews. The reality is very different. Once you actually step into the shoes, we don't know everything at all. I say this a lot, there are many sections in the code base. I have never touched, and I have no idea what they do. So we are not psychics, nor are we historians. We are definitely not dictators either. We plead. We're moderators, we're liaisons with people. We try and connect people and come to a common agreement. And secondly, we're not the best coder. We're not always the best coders. Dolph was, but I definitely was not. That's why they put me up. They made me PTL. Sometimes you're rather proud that you haven't touched a specific area code, or you're ashamed that you've touched that area code. And we don't just review code. There's probably 20 other things you have to do. You have to ensure the gate's not broken. You have to nominate cores, decore people, which is super awkward and painful. You got to tree out all the bugs, because no one wants to do that. You have to make sure the gate isn't broken, and all the stable's fine, and this is just, and we're going to get into that, because that's the good and the bad and the ugly going forward, but there's a lot more than just reviewing code. So you want to become a PTL. So hopefully there's a few aspiring PTLs in the audience that are wondering, all right, how do I become a PTL?  So how? So things you want to do. You want to work from the ground up. You want to get your feet wet. You want to start reviewing code. You want to become a core reviewer. And then from there, you can maybe toss your, put your, put your name in there for the next time the PTL voting comes around. Next, I always recommend people become known across multiple projects. You're going to have a lot of cross collaboration, cross stream, crossing streams, and with various other projects, you know, Oslo's an easy one to get involved into because everyone uses it. So make sure you're working with the release team, the Oslo team, the docs team. Make yourself available. Make sure you have a bouncer set up so you're not missing messages. Obviously review code, become a core, and most importantly, work well with others. You'd be surprised how not obvious that is. The don'ts.  Don't think you know it all. Don't work in isolation and don't push a company agenda. It's open stack first, company second. And, you know, you're going to have to work with a lot of different people, with a variety of backgrounds and skill sets. So you have to be able to work with others. And that's why you can't work in isolation. And why would you want to become PTL? You have solid understanding of the project, and you want to grow as a person. You're really good at cat herding for some reason. And you have enough time to devote to upstream work, enough time to devote to upstream work, and you have to devote to upstream work. So that's not a typo. That's not a typo. We actually wrote that there because you're going to be doing it a lot. It's a lot. Bad reasons. Management asks you to run for PTL. That's not a good reason. You have to want to do it yourself. Other bad reasons is to promote a company agenda. You know, there's various instances of that where people just want to do what their company wants. And I think that's less now, it was more so in the past. But it's still an issue. And leverage for more money, I mean. That's not a good reason at all, because that's not true either. I didn't see an extra dime, actually, in my case. Me either. There you go. All right, now Matt's going to talk about, sorry, you're going to talk about the good portions of being PTL. Here you go, sir. So, well, thanks for bringing the ice. So let's, let's, there you go. So I'm, I'm apparently supposed to be the positive guy of the trio here. Even though I'm exactly the opposite, but I'll give it a try. So, well, okay, now, in all seriousness, I think this, the experience of being a PTL teaches you a lot. You learn a lot more about yourself, not just from a technical standpoint, but also from a human, like, a social standpoint. And as engineers, as most of us are, practicing soft skills is something that you don't necessarily do when sitting in front of a screen, typing code in day in, day out. But when you are an IRC or where you are a PTG in these days or some it's a while back, you have to obviously get together with people, try to bridge barriers and communicate. And again, practice soft skills as much as you can. Once obviously you mastered, you crafted those skills, there is the chance for you to pass that knowledge on.  So there is a tremendous growth opportunity, you know, from, from, again, from the technical point of view as well as the human point of view. And being able to inspire other people throughout their growth process, it's something that is rewarding. Having said that, though, there is an awful lot of work involved. Steve mentioned about the dirty work required to keep the lights on, on a daily basis. And I've spent many days trying to keep the neutral gate up and running. I hope I can get a little bit of space. But that is all good stuff, right? That is still good stuff.  There is a reward in doing the dirty work and knowing that you've fixed the issue and other people who depend on you will be able to then do their work more easily.  And it's like, that doesn't happen very often. So, I mean, so mentoring other contributors, put them in the position to do well as you did to get to the point where you achieved, it's something that, again, it's very rewarding. Working with other projects, you know, getting Matt to say yes and get him to do the work. I mean, for instance, something that I'm pretty proud is getting a network feature that we developed between Neutral and Nova. That's something that takes a great deal of effort. Once you get to the finish line, it's a very rewarding experience. So coordinating feature development across projects. Yeah, I think when you work on these major cross-project initiatives and not just ones that sweep across all projects, but ones that are longstanding issues, like moving over to V3 of the Identity API or moving over to the Keystone middleware from Keystone Client, it's very rewarding when you see the work done. And I think that's just human nature to see that work done. And you've put a lot of thought into it. You've planned it, it's gone through, and it's done, and it's just very rewarding, I think. Right, yeah, I mean, making progress, right? Moving forward in the right direction and see that you are making an impact, it's the good about this job. Good? Go back. Damn it. All right, so, and for that, obviously you get to recognize as a person who has made an impact. So, you know, you get people to upload the efforts that you put in there out. You, obviously, because of that, have an increased visibility within the community. So, for instance, you may end up being pulled into, sometimes not necessarily something that you look for, but you get pulled into doing podcasts or interviews and some people like that, especially if you can get, you know, to practice your accent. You know, it's like, I mean, if I can find an opportunity to, you know, practice my English, it's always something that I appreciate. Well, they also promise you lots of beer. I've actually never seen any, which my, like, liver appreciates, but, yeah, sometimes, you know, they say, well, if you can help me with that, I can give you lots of alcohol. So, that's something that, you know, I can be perceived as a good thing. People look up to you and praise you for stepping up, you know, for carrying the burden of the project.  When you step down, go on. No, no, go ahead, go on. No, when you step down, they, you know, if you're done with your job, there is also very rewarding, the nice words that come from many folks like. So, there is also something that you really appreciate. So, what are you saying? On a note on the promised libations, it was, people will bug you because, as PTL, you are the face of the project, right? Correct. If anyone has a random question about how to use a command line utility, how to, you know, all my patches emerge conflict, how do I do that? Is, or help me merge this doc patch. You help anyone for anything, and that's where they're gonna tell you, hey, yeah, I'll get you a beer at the summit. But, stepping back a minute there, being the front face of the project means you are the go-to guy for everything. And I personally love being the go-to guy. It's a love-hate relationship.  So, yeah, it's a high amount of volume, but I really get a lot of satisfaction helping people work around issues that they're facing. Yeah, I mean, even if you can't help them understand, you being the go-to person, know how to redirect that person to the right person.  Yeah, dispatcher. And you learn the art of delegating. So if you wanna go into management and you want to learn how to delegate, they do nothing from that point onward. That's something that you may want to consider. All right, so I think we're gonna go into the bad part, and for that, Matt is gonna practice his skills. Yeah. Appropriate. I'm not, Sean knows I'm not one to complain, but there's a couple things, I guess. The biggest issue for me, I guess, is being stretched in. There's a lot of different working groups in OpenStack, and a lot of these answers that we think for why, if we just had people focusing on this one thing for like six months, it would be done. So let's create a working group. And, or how do we fix communication problems between product managers at companies and the developers and the operators, and well, it was to create like 20 operating, or 20 working groups, and it'll magically happen, and who's gonna relay the message? And generally the default is supposed to be the PTL. It doesn't really always happen. All of the stuff that's going on in other projects, trying to keep on top of that, like we said about cross-project, working on big cross-project efforts, like get me a network, the Keystone V3 things, and knowing that other projects have priorities that don't necessarily work with what our priorities are, release management. This is, it's sort of listed as a bad thing, but I also wanted to point out that the slide about like how do you eventually get it, step up into these leadership positions is doing the dirty work of like release management, staple branch stuff, fixing gate issues, and really just doing a lot of the day-to-day grind that lets the other people in the project that are actually working on coding and fixing and doing really tough development issues do their job without being totally distracted by everything else. Roadmaps, roadmaps is something I didn't really anticipate when I first became PTL and they were like, we need you to talk about the thing you're gonna work on a year and a half from now, and working for a large corporation, sure you get questions like that, but not at my level really at the time, it was like, well there's some guy that gets paid way more than I do, and I'm sure he's got an idea that will never come, you know, be actually visualized, but whatever, but so you get asked these sorts of questions, it's like, I don't know, and then feeling bad because you don't know. So the reality is that you're really a liaison like Armando said, it's a dispatcher. Workload, I think this is for, you don't have to be PTL for this, this is really just a developer, an open stack or a core reviewer, just being able to go on vacation, like Sean has told me numerous times that I am just terrible at vacationing.  It's like, well, everything's on fire and I just, you know. I'm the only one that can put it out. Yeah, right. You know, when you realize that you have a problem, when you go on vacation abroad for your own personal reasons and you're buying a very expensive data plan so that you can connect on IRC, that's when you realize that you have a problem. Yeah, I at least didn't bring my laptop to Europe last summer. I don't have an IRC bouncer. I did, I do sort of, I did sort of, well, I don't send that work from home now. I can't really turn it off, but I used to maybe like one or two days a week. I would just like leave my laptop at work and go home and that's how I would disconnect. I would force myself to disconnect. And I think another thing that makes you realize that you have a problem is when you plan your vacations around the lease schedule, the open stack lease schedule. Like I can't go on vacation on that day because that's bishopries. Right, there's, I think that's one of the things on the ugly slide.  The ever-growing backlog, the PTGs and the summits are great for working through existing issues, but I always feel like we come out of them with new work, new stuff sort of piled on. And there's always a focus for 10 years from now. It's the roadmap stuff. How are we, like what are we gonna do now so that in Rocky, like we're actually using limits from Keystone or something. And it's like, well, remember that we can't live migrate pinned CPU VMs or something that we haven't been able to do for two years and people still are angry about that. And then the inevitable crunch at the release candidate.  I don't, there's not really anywhere around that. Everything else is sort of dealing with the scale, the email explosion. I was talking to somebody, a new contributor that came to one of the NOVA Project on-boarding things at lunch today, and she just was like, how do I ask questions about anything? And the good part is you are close enough to working with new contributors so that you can remember what it was like being a new contributor, because after four or five years in, it gets easy to forget. But just a simple like, well, there's this development mailing list, right? But first thing you wanna do is set up filters and like filter everything and don't attempt to read all of the things. Just stick to one project or one topic and do that. So you learn these scales a bit. The gate blowing up, I don't know. I mean, it's a love hate. I actually really, there's like some sort of weird, I don't know, like pain and tolerance of just like everything is on fire. But this is like exhilarating, so let's fix it. That's why you made the elastic recheck, right? No, I didn't make it. That was Joe Gordon and Sean and some other people. But it was like a, I don't know, it was just, it's fun at the same time. It's weird. The bug backlog, that is not fun, I would say. I am never enjoying having 800 some bugs in the Nova backlog. I actually figured that out. You just marked them all invalid. It happens. Because they're no longer relevant now. Yeah, Marcus did that for a little while. But somebody does do the work. Somebody does go through there like once a year and close a few dozen maybe. It's also sort of, it's hard to motivate people to actually care about bug triage.  We're over 85, there's this weird threshold of like, if it's over 70, I'm sort of like red flag. People need to start caring, but nobody cares. Test coverage, it's another thing to always be harping on is, well, this failed, why didn't we catch it in CI? What can we do to add CI for this? And how do you get people to actually do the work to add it? And then just team meetings.  Why, thank you. Yeah, flattering, thank you. One note about team meetings. I remember not being PTL and not paying attention during the team meetings, unless it was my turn to talk. Sometimes I would just kind of tune out a few minutes. But now that when I was PTL, it was infuriating to know people were doing the same thing. It was like, I've messaged someone and I just spoke to you before the meeting. Now that the meeting's on, somehow you are not responding to my opinion as it's your turn to talk. However, it is fun to call them up, knowing that you're gonna trap somebody and calling them out. That's true, you control people in the meeting. It's kind of fun. Yes, Jeremy does not recommend it to tune out while chairing the meeting. That's actually another thing you could do if you're interested in becoming PTL, volunteer to chair the meeting. It's good experience. You get to learn all the different IRC shortcuts. John Garbut is in the UK and he was PTL before me and with the time zone we have different weeks, we do different meetings at times and that's really, John didn't wanna be running a meeting at nine o'clock at night in surprise for whatever reason. So I would run them. So now I'm gonna quickly talk about the ugly portion. So managing expectations, this can be hard. Contributors can be very upset at you. And I'm Canadian so I'm used to saying sorry. But when you minus to a spec and I just say sorry, this just isn't meeting our requirements. Yeah, you can work with them but it's already past spec feature freeze and you feel terrible because someone put this effort into it. It just didn't get reviewed because everyone swamped and now they gotta wait another six months and it's just, people will not like you for that, unfortunately. And it's just a reality of. You just gotta delegate someone else to say no. Yeah. Trying to justify your upstream time to your employer. I was lucky enough that when I was PTL, it was 100% of my time was upstream. That was totally cool with the employer. It was great. Other people are not as fortunate and it's very difficult to justify why you're doing this if it's not making us any money. Or why don't you work on the product? You have all the expertise to lead the project. Why don't you work on it on the downstream side? It's difficult. And then you gotta manage upstream relations. So first you have to work well with the other PTLs and other projects. You gotta work well with the infer PTLs, the docs PTL, the release management team, and even the TC at times. And it's really disappointing when previous PTLs who have all that kind of tribal knowledge just vanish. Or there was back when we had that small window of time where it was still just after milestone three and before release candidate, that's when the election would happen. And if the baton was handed over, sometimes the baton handing would be a little awkward. It was more of a throw it in someone's back. We're like, all right, you finish off this release, I'm out of here. That can get a little awkward. The other one is team dynamics. I mean, there's a lot of core things. Took a long time to find that picture. There's the core team, this is managing the core team basically. And it's, in Keystone there's 10, 12 people. I don't know how many cores you have in Nova, more than that and more in Neutron. And everyone's got different personalities, different ways of interacting. And it's that many people in one room even at the PTG can get awkward.  And it's, you know, I didn't sign up for this. I wanted to run a project, why am I doing this? And aside from that also you have to add core reviewers and it may seem easy. Yeah, okay, this person been reviewing a lot, make them a core, but it's more complicated than that. It's what company do they work for? Have they contributed enough? Am I, I've had to think about these decisions for weeks sometimes. It's not always a clear cut case. And the hardest part for me was actually decoring people because, or removing them from the core team. Cause, you know, even though they may not be active, it's, you know, they're not harming anyone. Why do I have to do this? And it's kinda, you'll take it a little bit personally if it happens, if you are removed from core for something cause you worked so hard to get there. Now someone's taken it away from you. However, there is like a, there is this perception that if you do have a lot of cores that you should be pushing through more code or more throughput. And it's like, well, it says that we have 15, but there's really like seven. So I've decored people just because of like, being honest about what the actual numbers are. Cause when the TC and the foundation people are like, what's going on? It's like, well, this isn't really a real number. Exactly. And it just kinda gets awkward. And then you're gonna have arguments over IRC over mailing this and you know, you're forced to kinda be the sheriff in your channel. You have to kick people for being troublesome, putting it lightly. So one way to summarize this, we're all engineers so we wanted to kind of portray this in a way. So if the good is the green line, bad is kinda relatively steady I think and the ugly, you get used to handling the ugly. So if it were three different points in the graph, it was the honeymoon's over. You got elected, congratulations. This big bag is yours now to hold. I'm not gonna say what's in the bag. Candy. Candy. B is probably a month or two into it or probably maybe halfway through a cycle. You're like, oh God, why'd I sign up for this? So the ugly is outweigh the good, right? Yeah, then the ugly outweighs the good. You start to realize that the bad is coming and it will be steady, bad. Yeah. Shoot whatever. And then it's release crunch time and no one is reviewing code. They're all just pushing more and more patches. And then lastly you kinda realize you have this epiphany of like, all right, this is relatively steady. I can handle this one. So that's the point where you gain experience, you learn what to expect for the TCs, not changing the rules under you and you're good to go. Yeah, there's no more surprises, exactly. I think for like all, like any of us that have been around for a while, you also realize that there's this up and down of, you know, Barcelona was a little depressing. The OSIC thing, I mean there are these big things that happen in the community and it gets like everybody sort of depressed for a while but then like if it's happened a couple of times you get out of it and you know that you're gonna come out the other end of it. So to conclude, I really want, I know we, there's unfortunately, I don't know why I picked the title but it gave you the perception that there was more bad than good because it's bad and ugly. But it's not quite accurate.   Do you trust those other people to help you? And that's an important skill that I think people don't get a chance to kind of figure out unless they're put in this position. But you know, of course, it must be fun because we did it three times each. So it's gotta be fun if you keep agreeing to do it. Sure.  And if you see a PTL around, they're probably overworked and just kind of give him a hug except for Matt, he doesn't do hugs. No? Give him two, exactly. Jim loves hugs. Yeah. All right. Delegate the hugs. Question. All right, any questions? Also, the mics are over there if you wanna ask the questions, otherwise I will go and repeat them. So since there's so many current and former PTLs in the room and keeping in mind I'm totally gonna hold you all to this, can I get like a rough timeline sort of sense? Like from your first commit to becoming a core, from becoming a core to becoming a PTL, realizing there's gonna be wild variants all around.  So it couldn't be that long, right? So that's what I'm like a little curious like, how long does that pull? I think it took me about a year to become a core and another year until I felt comfortable, you know, putting my name in there for PTL. Yeah, I guess it varies from from project to project. In my case it took me six months to become core and then I was able to stay away from the role for as long as I could until the point where I had to do it and I think that was about two years. So yeah, I think that's about it. I think it was about when I actually like was working full time, mostly upstream, it was a year to year and a half to core and then like two years later, I think it was PTL. And it's a classic PTL trick of when you know you don't wanna do it anymore, you find someone and you trick them into thinking that it's very much, it's all roses, don't worry about it.  Yes, sir. Steven, everyone. Which release did you start working on OpenSack? That's a great question. Grizzly? I wanna say? Grizzly-ish. Austin. Austin. That tells you how bad I am. He's 23 and he's the oldest. He just looks like old. Thank you. It is true. I think it is a compliment. You got the Obama effect. Wise, wise. Salt and pepper. Any other questions, please don't wait till the end and ask us and come up to the stage and ask us to just go to the mics. So you guys talk about working upstream and from at least my perspective as a contributor, you guys are upstream. So I'm just curious, upstream and downstream seems to be like a relative thing, depending on where you are. Is that the case or are there formal definitions for what's upstream and what's downstream? It's not formal. I, when I got started on OpenSack, I was on a product team working on sort of a distribution product for private cloud and it was really, there were other internal products within the company that were building off of the stuff that we did. So they were funneling their stuff to us and then we were working on it upstream and so we were sort of this pipeline between up and down. Eventually the product that I worked on was End of Life and so then I was mostly like upstream for a year and then it just sort of varies, I guess. So upstream being? Upstream being the majority of your time is spent just working on trunk master code, doing reviews, bug fixing, all of the dirty work kind of stuff. Right, as opposed to productizing or working on product or distro. Yeah, I guess it depends what type of company you work for, if you are a foreign operator. I mean, for instance, in Neutron, Mark McLean, he was the PTL for two cycles but he worked for Yahoo and that's, they don't build a product, they run a cloud. So it depends which role your company is, how they use OpenStack, it can be fluid, right? But as Matt said, I think that you can classify upstream as driving master branch development to the point that that can be easily consumed by operators and users. Basically working on the next release, pretty much. Yeah, yeah. Yeah, so Jim was just saying if you're using Launchpad, which is what we use to look at bugs, if you're looking at that instead of a Jira backlog or a Kanban board or something. Yeah, if you're working more with people from other companies, you're probably upstream. If you're working more with people from your own company, you're probably downstream. Anyway, another question, Jay. Yeah, this is great, thank you. So, I mean, basically as PTL, you need to plan to be upstream basically almost 100%, right? Would you agree with that? Nearly, yeah. Any guidance for how to make your employer aware of that and supportive, especially if they're new to the community? This is recorded. So, let Jay work more upstream, I guess. I'm just, I mean, it's hard. That's when the ugly portion, right? It's hard to convince employers the benefit that they get out of this. It's hard.  And that's like the too fast, too slow thread in the mailing list right now. We keep saying if you wanna make big changes, like you need to get involved and you can't just be like, drive by, this is terrible, see you later. There needs to be some level of trust, I think, and in order to actually properly influence a project. You need to, you can't come in as an unknown, unfortunately. I mean, you could come in and have a very valuable patch and it's great, but to land significant features, there has to be some level of trust that the core team has with you. And the only way to build that trust is to just focus on bugs, patches, code reviews. And to get on the core team, you have to build trust. Well, I'd like to sum it up by saying, if you got into a situation where you got to explain how to be PTL and stay PTL, probably you are already in a bad situation. In the sense that you probably want to figure out the ways we get out of that situation altogether. I'm trying to be a bit extreme here, but being PTL or being an upstream core developer means that that is your day job, day in, day out. And justifying is just with time. We got one more question, because we're over time. Okay, I've got two parts.  So comment on that along with answering this question.  It didn't go down. Your hourly salary. Considering you work so much more, you still get paid the same, you know?  Oh, mine went down, I will tell you. So last summer in Barcelona, I walked up to Richard Jones, who was the Horizon PTL at the time. And we had never met before. He's like, hey, you're Steve Maranelli, right? I'm like, yeah, yeah. And he's like, you're the Keystone PTL, yep. And you just got elected to TC, yep. And you just had a kid, right?   Like, why are you doing this to yourself? And I wish I knew the answer. That's a great question. When I was new in OpenStack, I thought all of the guys that were mentoring us internally were, they didn't have families or lives. And then I found out like, like when I started Russell Bryant was PTL, and a year later I found out that he was actually married. And it was like, oh my God, Dan's got a wife and Sean's got a wife. And I was like, hold the cow. Like these guys actually have lives and families. You really learn how to like value every minute of your day. And that goes into the personal growth part. Like you have to become good at time management, especially when you have to balance it with life. And that's one of the outcomes of being a PTL. You really learn how to handle that time management. Yeah, disconnect is really important as well. Anyway, speaking of, speaking of, we get an end. All right, thanks for coming everyone.