And the understate governor, Rotimi Akeridolu, has condemned Garba Sheo over his comments on the resolutions of the 17 southern governors made at a meeting in Asaba Delta State. In a statement from the presidency, Sheo condemned the resolutions of the 17 southern governors, but Akeridolu described him as an instigator, adding that the presidential media aide was not speaking for President Buhari on the ban on open grazing. He also warned Sheo and his cohorts to desist from hurling insults and elected representatives of the people. Akeridolu added that Sheo lacks the authority to make policy statements for the federal government unless directed expressly.


So let's take a look at a few more equations reducible to quadratics. So let's try to solve x minus 2 squared of x minus 8 equals 0. So again, there's no algorithm, no formula, no set of steps, no divine light shining down from the heaven that will tell us what the best substitution is. We just have to try out different things and see what works. But there are a couple of things that we might try first. In this case, because we have a square root, we might try the substitution y equals square root of x. Now, since we only know how to solve quadratic equations, we also want to look at what y squared is, so y squared will be, and that's promising, because all the variable parts in our original equation are either square root of x or x, and so this substitution will eliminate all of those things. So let's make the substitution y equals square root of x, and that gives us a quadratic equation. Since the universe is a kind and gentle place, and I am a kind and gentle math teacher, every quadratic you'll ever encounter is factorable, so we'll try to factor. Yeah, I don't think so. Since the quadratic formula works on every quadratic equation, we'll use the quadratic formula to solve. And this gives us our two solutions, 4 or negative 2. And again, if it's not written down, it didn't happen. We should write down that we have solutions y equals 4, y equals negative 2. Well, again, the original equation was in terms of x, so y equals 4 is not a solution, but equals means replaceable. So our two equations here become... So now let's try to solve these equations. So the first one, we have square root of x equals 4, so we can undo the square root by squaring, and we get a solution x equals 16. We also have the second equation, square root of x equals negative 2. But remember, square root of n is never a negative number. So this equation, square root of x equals negative 2, we're saying a non-negative number is equal to a negative number, and this has no solution. And again, if it's not written down, it didn't happen. If we just leave our answer like this, it looks like we ignored this second solution and didn't do anything with it. So let's cross it out lightly so that we know we actually checked it and found that we couldn't get a solution from it. And maybe we'll emphasize that fact with a short note. How about x to the minus 2 plus 4x to the minus 1 minus 5 equals 0? This time, because our exponents are minus 2 and minus 1, we might try the substitution z equals x to the power minus 1. And since we're allowed to have a z squared in a quadratic equation, let's see what z squared is, which is x to the power minus 2. And again, it looks like this will work because our variable parts are either x to the minus 1 or x to the minus 2, and a substitution will allow us to get rid of both of them. So making the substitution z equals x to the power negative 1 gives us, and, well, maybe the universe is kind and gentle, and we can solve this by factoring. And we got lucky this does actually factor. And so now we have product equal to 0, so we know that one of the factors must be 0. So either z minus 1 is 0, or z plus 5 is 0. Solving these gives us our two solutions, which we write down. So again, our original equation was in terms of x equals means replaceable, so instead of z, I can write x to the power minus 1. And now we can try to solve both of our new equations. So x to the power minus 1 equals 1. Let's solve that. So remember a negative exponent corresponds to 1 over. So x to the power minus 1 is really 1 over x. Now, our equation is a quotient, 1 divided by x. So our first step is going to be to multiply. So we'll multiply both sides by x. If we simplify, we get our first solution, x equals 1. Similarly, x to the power negative 1 equals negative 5. We can rewrite this negative power. We can then multiply both sides by x and solve our equation. And we get our solution, x equals negative 1 fifth. Or how about x to the power negative 2 thirds minus x to the power negative 1 third minus 2 equals 0. Well, how about let's make our substitution u equals x to the power minus 1 third. Then u squared will be x to the power minus 2 thirds.  We'll solve this using the quadratic formula, giving us solutions of 2 or negative 1, and again, since our equation was in terms of x, we'll have to solve in terms of x. So x to the power negative 1 third. Again, a negative exponent is a 1 over the same base, same power, but not negative. So we can rewrite our equation as 1 over x to the power 1 third equals 2. Now we have a quotient, so let's simplify this by multiplying by the denominator x to the power 1 third. So we'll multiply on the left and on the right. Over on the right-hand side, we have 2 times x to the power 1 third. And remember that a fractional exponent corresponds to a root. So this x to the power 1 third is really the cube root of x. So again, over on the right-hand side, we have a product, so we'll divide both sides by 2. Over on the right-hand side, we have a root, so now we can raise both sides to the third power, and that gives us x equal to 1 eighth as one of our solutions. This other equation, x to the power minus 1 third equals negative 1, we can go through the same steps, giving us x equals minus 1 as a second solution.


Good morning everybody. You can see that I got all of my stuff in the truck. It's Monday. I'm ready to get going Let's get out there on highway two Brainerd will get unloaded this afternoon yet below that's loading first thing tomorrow morning. It's taking me back home Getting scenery on the landscape. There's no snow in Brainerd. I love it. Beautiful day out here Let's get this freight off our trailers weighing me down. I don't want any more All right, so trailers empty behind me and I have a new load I have a new mission. Are you down to come with me on a new adventure an adventure of epic proportions all the way to the great megalop Megalopolis, I can't even say with straight face. We're going to Duluth. I can't even get my words right. We're going to Duluth It's gonna punch in the address here and Yeah, so we're gonna get close to there. There is a quick trip, I believe Close by there where I'm gonna spend the night tonight I'm gonna organize the truck a little bit because I might finally have a little bit of time to do some organizing Life is so busy. There's always always something to do I don't I'm not just joking around when I say that it's always something. There's always something to do It's not a bad thing either. It's just sometimes there's some things that really need to get done and they get neglected Like my poor truck See if I can get this address pulled up here That's not spelled correctly. Ah, there it is There it is Duluth Duluth. Okay. How far away are we? 174 kilometers. That's about 110 miles Proceed to the highlighted route Indeed Okay, so two hours two hours and I'm gonna go to that quick trip that I was talking about So I sent in my paperwork Assigned a bill of ladings proof of delivery Oops for all my window is open I have to slam my door pretty hard to get it to close when the windows are closed because the air pressure in there But I leave the window open sometimes and then I Empty trailer in case you didn't believe me in case you think I'm a liar.  I can't slide these so I have to be very careful how I load freight. I know you need a bath blue I feel so bad We'll get there Like I was saying just a few minutes ago. It's just the last couple of weeks have felt Like I'm just constantly rushing rushing rushing And the rest of this month is pretty packed full of stuff too later on in this month. We have a few special things going on I'm taking a flight Going to a special event I'll talk more about that as the time draws near. So there's that I'll only be there for a day. So Go on Flying out special event coming back. Then it's my son's first birthday. It's a big day. It's gonna be great I'm gonna have a we have a party on the weekend too It's first year's one-year-old one-year-old birthday party. Super excited about that. Oh, we've had this IVF stuff going on so my life behind the scenes of trucking has been Has been filled up with all kinds of stuff, but it's all happy stuff. It's all happy stuff So all blue Your cleanliness has been neglected a little bit and I apologize. I am sorry I'll make up for it. I'll make up for it. I Got a comment the other day obviously someone who is new to the channel saying oh this guy talks to his GPS He talks to his truck. He must be crazy Welcome here, and yes, I am crazy. Thank you. Thank you for noticing. I am a weird guy And that's why you watch me, right? That's why you came here It's nice out here. It's so much nicer here than it was at home.  Talk to you a little bit. Talk to you in a little bit I'll talk to you a little bit in a bit But it's out of the way There was at least six or seven spots taken up by drop trailers and local trucks that are probably just You guys probably just went home for the night And left their trucks here taking up a spot Which is whatever No rule or anything saying they can't do that I guess right But it does leave us highway guys at a disadvantage because then we have nowhere to park And we can't just go home and sleep in our own bed when we're out here That's okay So we have a spot to sleep We'll be just fine. It was a good day drove about 730 kilometers today Just under 500 miles Beautiful clear night, and we're ready to load up tomorrow. We'll be loading Casted, I think it's called casted steel It'll be heavy on the deck here tied down and bring it back to Manitoba Till I'm gonna start moving and we'll give me some time to organize in here And get a good night's sleep So I'm on this Intermittent fasting. I wouldn't call it a diet. I don't like going on diets. I Don't like having to watch every single calorie that I eat. It's I'd rather rather do this Haven't tried it before but it's really working I've been doing this for a week now where I only eat for eight hours of the day and Then I fast or I don't eat for 16 hours now That's overnight. So most of the time you're fasting you're sleeping and you don't realize that you're hungry, right?  You're sleeping. That doesn't matter as much So if I stop eating at five o'clock that means I can start eating again at 9 a.m. The next day or like today I believe I stopped eating at 630 right So 16 hours from 630 I can start eating at 630 789 10 30 10 30 tomorrow morning. I can eat again, which isn't bad, right? I'll wake up probably around with 530 Run over there get loaded. I can still drink water and stuff.  So it's He's really been working out well for me and in the last week. I've lost six pounds And this has been the only thing that has actually worked for me to lose weight since before our wedding Remember I lost 30 pounds before our wedding And since then I've been sort of Blooting out as we do as we all do and I haven't been able to find motivation or any Routine or anything that worked for me, especially being on the road trucking It's hard to get into a regular routine. You can't just stop and Have a full workout Anyway, though there are ways to do it, but I run such a tight schedule that I just don't have a lot of time It's a big thing. I don't have a lot of time for this so Fasting for 16 hours a day Eating for eight hours of the day.  It's been working for me So I've been really happy with that Continue this until hopefully it keeps going down. I want to get down to below 200 pounds I'm at 221 pounds now down from 227 a week ago. I think that's pretty good progress in a week and At this rate and it'd be a couple of months and I'll be down to my goal weight of below 200 I'd like to get between hundred eighty hundred ninety one eighty five would be nice. No lower than 180 But below 200 for sure. Anyways, you guys don't care about this. This is sort of me just Filling you in on what's going on in my life. That's what the vlog is about, right? It's not just about trucking Yes, I'm a truck driver. I do trucking stuff a lot of the time This is my biggest passion in life aside from my family So you'll see a lot of trucking stuff my I did label my channel trucker Josh vlog So maybe you showed up here expecting all trucking stuff. Well Sorry to disappoint you but there's a lot of non trucking stuff in my life as well more than just a trucker I'm not just a truck. It's this channel to show you the full perspective of my lifestyle as a trucker that also includes stuff at home and Personal things that I go through in my life that I choose to share like my weight my weight loss That's something I like to share with everybody because I know that when I hear other people talking about it It motivates me to do the same. So if I even motivate one person to get healthier out there along with me, I Helped one person and it makes me feel good So thanks for joining me today everybody, I'll see you right here tomorrow Please tune in join me hit that subscribe button hit that bell button The best way you can support us is by hitting the like button and leaving me a comment down below Reply to some other comments down there if you like as well helps with the algorithm Please be respectful to others if you are commenting or replying to them That's all I ask if you want to go to the next level and support us one step further You can always join as a member click the join now button below my video or on my main page to learn more about that Other than that, I'll see you right here tomorrow Take care everyone drive safe


In Vanuatu, we have about 83 islands and a very small population. Cyber security is also a new thing because right now people are using the internet but the awareness on the threats that are online is very less. In said Vanuatu, you see the computer and messaging response team of Vanuatu. We respond to any reported cyber threats. We see a lot of phishing attacks. So that is, I would say around 70 to 80% of the attacks coming in. We also see online scams and a few extortion cases and of course malware intrusion as well. It actually placed the whole entire country at risk as well which is both the government and also the private sector in Vanuatu. We've also went through one week training with ITU. It was an interesting training for us. I think it's something that unites every country is we are fighting the same battle anyway. People who are behind the attacks, we are fighting the same guys, the same bad guys. And so the way we can counter all those cyber security threats is to collaborate better. I think the key here is awareness. There are around 90% network coverage in the country. A lot of people who walk around town or who are in an office has access to a computer with internet as well as their mobile phones. They do have access as well. If we can educate the students in terms of cyber threats and all this, there are the ones who will be spreading the words around. If we can get that message across, we can probably minimize the cyber threats or cyber attacks in Vanuatu.


If you are any kind of fan of viral content, particularly on historically black colleges and universities, you have probably crossed paths with the roommates of Virginia State University in recent weeks and months. We are privileged and honored to have these brothers with us today and also joining us, the newest member of their cohort, Virginia State University president, Dr. McCulloch Abdullah here to share with us the story behind the viral content that went worldwide of basketball variety. So first gentleman, I appreciate your time today. You guys, the roommates as you guys are known, you're broadcasting live from when it looks like an apartment or a dorm room. There are no holes in the wall, there is no folding chair. But can you talk about the most recent video that got picked up by TMZ, ESPN, all kinds of outlets involving the president and showing his basketball skill out on the yard and in the gym. The rules are involved. How do you guys come up with this stuff, man? And how do you have such a pulse where you kind of have perfected the art of knowing what people will really enjoy and really wanna see across a wide range of attention and a wide range of background? As you know, we started this in 2019. We started off as an accident and people love seeing what people do in college. People always love seeing the goofiness that's going on in college and stuff. It brings the fun out of the seriousness people think college is about. And I feel like that's why people are so intrigued into it because they see how much fun you get. Make out of college, you can make something out of nothing. And so many people probably have problems with their roommates or so many people are not as close to their roommates. So to see that we have that chemistry with our roommates, I think that's what really brings people into our videos and that's what really intrigues them and they wanna see more of it. So I started off as that and then just to put the creativity into it and put other people into it like the Wu-Wu's and Virginia State students and all types of stuff. I think that really caught a lot of people's attention and definitely put the present into it. It is just like, you don't see people doing that. So we just always wanna step out the box what we wanna do and how we wanna make our videos. You said it started as an accident. Has it always been a scripted thing? Was it always just something just kind of off the cuff that you realize, oh, we put that together well, let's see if we can duplicate that success or how is it infrastructure wise? How's it been for you guys to do it? Yeah, that's how it really goes. The first video, it was an accident. He just came in the video, took the shine and then usually it's always like that. Even before we even started recording it is he's always doing stuff like that. So we just think of stuff, and we just have it. We tell it, we just, I see it and then I'm like, okay, let's do that again, but let's record it. So it's natural to us, you know, it's just we always goofing around, dance battle with all types of stuff, people always flipping and stuff. So it's just like, this is what we really do. That's why it's so natural. You guys have had, what is it? I think we were discussing, it's been about 15 videos that have had at least a million views, there are some companies that can't do that. There are some brands that can't do that. What do you think? Do you think that it's the HBCU culture? Do you think that it's because the Virginia State campus is behind you? I would love to hear from all three of you. What do you think kind of powers the notion like how it gets out there? Like what community elements really push it so other people are watching it? That's a good question. Yeah, go ahead folks. Okay, but that's a great question. I would like to attribute it to being like a part of a cultural thing. It's definitely with the HBCU community and just people that go to HBCU, we just have a different type of flavor, I would say, at HBCU and then it's just real relatable. For someone to go to HBCU, you get a roommate, sometimes you're from different environments, sometimes you're from the same environment, you have a lot in common, sometimes you don't. So when we're being natural, anybody on campus that knows us knows that's like, anything you see on a video, that's really how we act. So it's like, what is natural and people can really feel it? It definitely enhances and the HBCU swag just adds on to it. Yeah, like what he said is relatable. So it's, so many people can look at one of our videos and them having a dance battle and then they'll tag their friends saying, oh, remember when we did this in college? Oh, remember when we did this? So many people are tagging their friends and stuff because it's so relatable. It's what we do. We're just recording it and we're just having fun. It was just so funny. So I think it's part of people relating to it and other HBCUs and stuff and that the fact that we're going to HBCU, you don't see many people doing that. So it's just like, wow, it's the HBCU doing this really. So I feel like that's what keeps people intrigued into it. Jared, if you don't mind me picking this up for them, right? I think part of what's also happening is at our schools and HBCUs and Virginia State where you went and Howard, where I went, the kind of relationships that you've developed and lifelong friendships are really just incredible and the kind of interactions that you have and the dorms interactions that you have on campus. I mean, they've always been incredible. That's why you make your lifelong friends. That's why you come back for homecoming. And what they've been able to do is to kind of capture that energy in real time while it's happening on campus. I think that's the real magic and I'm not even sure because they haven't graduated yet, right? So I don't know if they really understand the significance of the relationships that they have, but the idea that they're able to really show people what it's like when you go away from home and you live on campus together and the kind of relationships you develop with your friends that become like brothers to you, right? And so those relationships are really translating. They're fun and games, including their relationships and their brotherhood that's being translated onto Camper. It's interesting that you bring that up and how did you as an executive at the institution look at some of these videos and some of them aren't safe for work, bro. So let's, we make that clear. You got to be an adult for some of them, which is fine because this is a college, we're talking about young adults. But how did you as an executive get connected to say, you know what, these are some talented guys. Let's see if we can put more of the university's brand behind what they're doing in the form of a president or other executives being involved. Well, I think that I've always been really acting on social media. I think it's a great way to learn about what's happening on campus and with the students. And so I watch a lot. I think the students would be surprised at how much I see and don't comment on. And I think the first time I saw students go viral, again, as a 2018 student of the year that you gave the award to, Brianna Bundett Kelly, Briance, who did the Beyonce dance and went viral from Virginia State. We remember Virginia State stuff. So that started putting me into the, started watching what our students do and how they express themselves. And it was probably a little over a year ago when I first saw these young men. I think I saw the first one, the accidental one. I think it was the one when Orlando kind of hit the floor. And it was, you know, I think he thought they destroyed the dorm when he did that. And everybody was kind of laughing about it. And then I saw a couple of the other ones. But I think the one that really got me was the one they had on ESPN when they did the slam dunk contest in the room. And they put a hole in my wall that they got fined for. And they paid the fine and they fixed it. So I want to put that out there first, right? It was still humorous. You know, it's what I got, what I got out of it was I just thought that they were having so much fun.  And I wanted them to have fun. I think that was the first video I officially commented on that I saw. That y'all go pay for this wall. Is that what, was that your cover? Exactly, that was the cover. But that was, that was my biggest tweet of the year. You know, it's interesting because it takes a lot of slack to do that because I know when I did stupid things when I was in Morgan, we used to box in our study lounge in our dorm. And people got hurt, people got knocked out. We could have been thrown out, we could have been thrown out of school for that. Somebody could have been thrown out of school putting a hole in the wall in the dorm, but you didn't do that. So what, talk about the, I don't know if mentoring is the right word, but the understanding of what the brothers were trying to do. And then even to the point of being self-deprecating and saying, I'm gonna be in one of these videos or being open to being in one of them. Well, no, I thought the thing with the wall was, look, I mean, they're still students. They still had to be responsible.  They got fine, they paid to fine. They did their community service for that. But that didn't take away, I thought, from the magic really of the video. And that's what I wanted to, I reached out to them and we connected. I think this was probably last year around this time and really started talking about it very early on what we might be able to do together. But then COVID happened and everything just kind of changed. But I was just excited. I thought that their work was just so clever. And it really, so not just the relationships, but the talent. I mean, there's real talent amongst these three individuals. And, you know, for Orlando and Devon, we call them brothers by their names, right? And I'm just, you know, I'm proud that they're at Virginia State. I'm proud that they've grown into who they're going to be at Virginia State. And I'm also proud about where they're gonna go.  I mean, these are young men who are going to be the next generation of leaders, leading the next generation of young men. And so I'm proud of who they are and who they've become. And I'm proud that they represent Virginia State.  Let's talk about the market value for this because it would be difficult to even pay for millions of views that where people can see Virginia State's logo, they can see the woo-woos, they can see the students and their dynamic of, you know, how close they are, what a community is, that's stuff you can't pay for. Has that been the reaction of like the faculty, the alumni, the board? Have they looked at that as like, yo, we're on to something with a marketing mechanism here? I think so. I think everybody kind of sees there's something here. I'm not sure anyone, I mean, look, I knew something would happen. I thought we would go VSU virus, right? I thought anybody in Virginia State would see it. I'm not so sure. I thought what was really, knew what was really going to happen with it. And so in some ways, I'm still trying to wrap my mind around, you know, what does that, what does it mean? And how do you, how do you grow from it? And how do you use it? I mean, we've never been here before. So we, we're still trying to work those things out. But I'll tell you this much, I have every single meeting I've been in for the past four weeks with any person. The first thing we talked about is that video. Well, and it's part of a growing catalog of, of exposure for the institution. So you mentioned the sister, Brionce, Deshauna Barber, Winsmiss USA. You've had different videos that the media arts department on campus has done that have gotten a lot of attention. Is it, I don't think it's intentional. I don't think it's the, it's the, it's the culture of the university, but there's something about it, two national teachers of the year in the last couple of years, you've had like success really exposing the institution for academic and social opportunities. Like what do you think it is about Virginia State graduates, students, where they're just doing dynamic things early on in their careers or early on as professionals that get so much attention from so many people. Look, if I told you I knew the whole answer to that, I'd be a certainly a genius. I think the real thing is, is that there's some really great people who are associated with VSU. We talked about Rodney Robinson and the young man Alejandro, who just won the 2021 teacher of the year. When you talk about these two young men who have been doing great work as teachers, Deshauna Barber, captain in the, in the Army is also doing incredible work. You know, we're just proud to have a lungs that care enough about Virginia State that when something happens that they brand themselves with VXU. I think it's the same with these young men.  And at the same time, they think enough of their institution to put Virginia State University on their chest. And so we are just happy that those who are having accomplishments, doing great things out in the world, that they feel good enough about Virginia State University that they want us to, they want to carry us along for the ride. And so we're, and we're excited to go along with it. And of course we embrace it as an institution. We really embrace social media and we want to celebrate folks who we're gonna chance to celebrate. So it's a great thing for VXU. The brothers in the roommates, is there any pressure for you when you have so much success doing this over and over again?  Like we got to get number one. Like, do you ever had this dialogue about like how do you maintain or even surpass what you've done? Not exactly. One thing we all agree on is, we like to make people smile and laugh. That's the best medicine in the world. When COVID hit last year, it really brought like everyone down, not just nationally, but globally. And for us to communicate the way we do and link up and do what we usually do in the videos, people, that lifts their spirits up just a little bit. And when we hear that, when they reply back to us and get to us and contact us and tell them like, you know, we made our day. You know, that makes us feel good. That shows that we're doing something correct. You know what I'm saying?  Do you, do you feel like there's any dissonance between how you guys sound and present now and in your daily lives in class, you know, in the calf, on the yard and you guys are so thoughtful and so professional. And yet you Orlando, I think big boy, you take the beating more than anybody else. Like you physically take a beating in some of these things. People get knocked out in the back of these videos sometimes.  Yeah, I definitely think there's a distance. People that see our videos probably think we act a certain way, but we're actually really just cool people, you know, we're actually like a family, you know, it's, it ain't, there's some people probably come up with stories like, man, you're going to have to get me or something like that, but that's not really the case. I think it's a big distance. I mean, once you get to meet a certain person. I would ask all four of you guys just to wind up. And I really appreciate the time because it's such a special thing that y'all have going on. Not just for Virginia Sabre, for all HBCU's, you guys have really put on for the entire sector. And it's just, it's just an immense amount of appreciation we have for what you've done. And like I agree with Dr. Billa, I don't think you realize how much it means for our whole sector. But at some point there is going to, that you guys are going to have another chapter. You're going to graduate.  Is this something that you think is a, is an undergraduate experience? Or is it something that you say it's so popular? Maybe we should consider a way to keep it going beyond our college days. And then to you brother president, is it something that you feel because it's been so, so popular and helpful for the university? Do, does the institution feel any pressure to say, how do we keep something like this intact? I'll let them go first. I think we all can agree that first we take care of our priorities. You know what I'm saying? As far as graduation, if it comes to that part where it's like, okay, I pursued my dream. I got my diploma. I'm doing what I want to do. But I feel like we could have done more. It's nothing to contact one another or just say, what if we pick back up where we left off? Because it's still going to be there regardless. Once the world sees, you know, a video, it's out there. Remember. And it can be reposted, retweeted, it's going to be brought back into the conversation. So that's my two cents. As far as after graduation, we definitely feel like we can continue to make videos even after graduation, just to help the people who recognize our faces now. So our video doesn't necessarily have to be on campus. It could be us doing anything now. But we will always represent Virginia State. You know, we will always have this apparel. We'll always have all of that. So no matter where we go, we'll represent Virginia State and we're making videos. No matter where we're at, it doesn't have to be in the room. It could be different settings. And just, and even if we don't, maybe our videos are inspiring the people coming to Virginia State to do the same thing or to make something similar or giving them hope that they can do something like this. So just to make videos now inspiring the people that's coming to Virginia State or people that are already here, you know, that would be a good accomplishment for us. Pressure's on. For me, I would say the beautiful thing about it is we had the opportunity to have a pandemic where it separated us. We all live in three different states. We already had to go through not being around each other, you know, for extended period of time. And throughout this period of time, we were still able to get videos done and be broadcasted on a different light. So I think the good thing about it is that the bond is actually there. Like, these are really my brothers. Like over the breaks, over the vacations, we still talk every day in the group chat. We still FaceTime. We get on Instagram Live. We can still joke. So I know throughout this lifetime, I'm still having the relationship. Although we're gonna grow past the dorm room, we understand that. But I think that's when it's gonna get better, believe it or not. Because a lot of the world doesn't understand that my roommate all the way to the side is an amazing artist. Like they haven't seen his art yet. He's gonna be a great artist. He already is one. My roommate right here is a passionate athletics person. He's gonna be a famous coach one day. I'm a counselor. I have a business with counseling. And the world doesn't know that yet, but that's the next journey in life. I'm just, I look forward to seeing it. Cause I saw it from when we first started and people was like, yeah, that was one cool video. That's done, which I'm gonna do now. We'd never thought of it like, I think that we have to keep doing these videos. It's just so natural and so real that when we get to the next level, I think it's gonna shock a lot of people of how we can continue it through a different life. Well, I'll pick that a one. I just wanna, I think you heard it, right? I mean, how incredibly thoughtful they are, how talented they are and how successful as teachers, as counselors, as artists, as coaches that they're gonna be when they leave Virginia State. Of course it goes without saying, I don't want them to stay at state, right? We bring students to state so they can graduate and leave. But is there extra pressure, I think, from the university to make sure, one, that we just begin to work with young people more to get the word out about states? Oh, definitely, definitely. And is there not pressure, but is there the idea that maybe we can figure out something between me and these five million men about how we continue to market Virginia State University? That's certainly true too. I don't know if we know what that answer is yet, but I think the conversation has to continue to go forward because, and I say this to all of my colleagues, your best marketers from your institution, they're on your campus right now and they're doing the work. And quite as kept, they've already gone viral twice, right? Your kids on your campus have already gone viral twice and they're talking the good word or sometimes not the good word about your institution. The challenge is how do you partner with them to tell the great stories of your institution? And I think it's doable. And these young men have really showed part of the way that universities can use the talent that's on their campus to begin to move forward. So again, they are the story. And I'm glad to, I'm glad to have had a role in wanting to take Orlando's place. He's usually the star, Orlando's the star. So I get to, I got to do his thing.


Hi, good morning, everyone. Thanks so much for coming in today. We're going to talk a lot, actually, about CSS Grid. Talk a little bit about how we might apply it in the real world right now, and then wrap up with some final observations. So kicking things off, my name is Tiffany. My Twitter handle is here, so if you're tweeting anything that I'm saying, I can't promise there's good quotables, but you're welcome to. I live at the beach. I moved to North Carolina about a year ago with these three adorable small people. And my husband is around here somewhere. I've been a developer for 18 years. I do a ton of work in the WordPress space, a ton of work in the e-commerce space. And I'm a full-stack developer, so I do both front end and back end development. It turns out that if you've been a developer that long, when you started, there was no separation between those two things. So you had to learn how to do all of them. So before I get started, and so I can tailor some of the things that I'm going to say a little bit better, I'd like to get a sense for who all of you are. So if you could just by show of hands tell me how many in the room are developers? Cool. How many are designers? How many are both? Nice. Nice, you've got a good group. And how many people are brand new and are just kind of excited to learn more about CSS and CSS Grid? Nice. All right. So it seems like I started the talk wrong, right?  It was either a really great talk or, as it turns out, it's just that I'm a super cool presenter. And I'm doing that thing that dramatic television shows do, where they show you a snapshot of the very end of the show. And then there's a noise 15 hours ago. And so because I'm really cool, I'm going to tell you what the takeaways are of the talk before we start. And then hope that y'all stick around to actually learn why we got here. Some things we're going to take away today. We're going to work smarter so that we can work even smarter later. We want to think in patterns and build in blocks. This one is something that I'm very passionate about. If you want to talk to me about pattern libraries later, I have a whole thing to talk about. Fallbacks are easier than you expect, maybe easier than you've been led to believe. And Grid isn't super comfortable when you start. And so I want to encourage you to be uncomfortable on purpose. We're going to change our whole perspective on layout right now. It's going to be crazy. Maybe not Owen Wilson crazy, but crazy. But before we do that, I want to go and grab a little bit of history. So there may be a few of you who remember this. Does anybody remember CSS Zen Garden? Yay, many more than I expected. This is what it looked like when I started using CSS. It looks different now, but this theme is still available, if you ever want to go back and look at it. And this is where we made this transition from a world where layout was done with tables. And we moved away from laying it all out in cells. And we moved away from the unpredictability of something that was really designed for tabular data and not for layout. And we moved into a world of CSS, where we had more power than we ever had before. We got floats. Then we got Dividus. And even then, with floats, everything we did was one-dimensional. And it wasn't all that modular. Cascading, style sheets, inherit. And they're supposed to, and the inheritance is beautiful. But it isn't always, well, it's always predictable. The machine always does what I tell it to do. I'm just a human. And I sometimes tell it to do the wrong stuff. Or forget that it's inheriting things from other places. And again, like I said, one of the biggest problems is that it's one-dimensional. We can only think about things in a row. We really can't think about things in the same dimensions as they're laid out on the page. And we've come up with a lot of really cool hacks and tricks for working around this. And we've built frameworks that leverage some of the most amazing tools that we have. They leverage CSS preprocessing to build us BEM models where we can spin up a whole layout on a grid, on a clean predictable grid with a minimal amount of effort. That minimal amount of effort, once you learn it however, does lead to an unnecessary amount of HTML bloat. Enter Flexbox. And Flexbox is something that I was kind of late to the game with. I was very hesitant to start using it. And I think that's why I got so excited about CSS Grid so quickly. Because I didn't want to make this mistake again. Flexbox lets us vertical center things. How many people loved vertical centering things before Flexbox? You're lying. But it's still one-dimensional. We can only think about things in rows. Now we can kind of think about them in columns, sort of. But again, we had to learn a new layout structure and it's not two-dimensional. It's still really, really good. And a lot of people I have heard will make the distinction that Grid is the new Flexbox. Or Grid is taking the place of Flexbox. I don't really think that's true. I think that much like you can use two different tools for the same job, and one of them's just gonna be a little better at doing that job, that's what Flexbox and Grid are. And there are still a lot of use cases where Flexbox absolutely makes sense. I'm gonna show you later a layout that we did using Grid where the header is still entirely done in Flexbox because it didn't make sense to put the header on a grid. It's a completely separate element that later also becomes pinned to the top of the browser so it's not adhering to any of the rest of the page layout at all. So I talked about this second dimension a couple times. This feels way less cool than the sci-fi feeling I wanted it to have. Maybe I should tell you it's a fifth dimension or something crazier like that. But we're gonna join the second dimension. So here's some ways that Grid is different. And Grid is new-ish. It's been since, I wanna say, November or so that we had massive browser support and that's almost a year now, wow, where we're able to use it. I'll talk a little bit later about Internet Explorer and the asterisk that goes on it. It's the same asterisk that's been there since I started building websites 20 years ago. A little better now than it used to be. But Grid is two-dimensional. So we can think about things in rows and in columns and we can specify all of them. Which means that our layouts that we sketch on napkins can now be translated into actual code that respects all of the rules that we drew on the napkin. This is where we've evolved to, napkin drawings. Grid also enforces and simplifies modularity. What this means for me is that I'm free now to do something I always wanted to do but was a little bit fettered by the constraints of my own styles. And that is to think about each component of my page as though it is its own individual component to analyze an entire site for reusable patterns and code those patterns knowing that I can later rearrange them, move them around and of course still have the ability to globally control what they look like. So here's an example of a site that we built and there's, I know that this source code is very small when we get to places where there's actually source code to look at. I made it bigger for you. But to start with I just wanna showcase how this particular page has multiple different components that use completely different grids and don't adhere to the same grid system at all. So this is sort of just your basic three up card. The next section is again just sort of your basic two up card. The only thing, and in fact between those two components the gutter isn't even consistent. This space in the middle between the two columns exists here whereas it does not exist between the cards above. And then as we move further down the page we have yet another grid layout where as you can see you can draw lines all the way around it to showcase exactly what sections of the page you want to be styling and how you want to be styling them. There's also some additional cool things about this particular block that we'll talk about a little bit later. Another great thing about grid is it works with the markup you already had to write. So when you sit down to start a project everybody writes the HTML first, right? We all want to, right? So when you sit down and you write out the HTML and it's semantic and it's beautiful and it's wonderful and all the elements make sense and there's an intuitive hierarchy of information and you know it's perfectly accessible and then you have to turn it into a layout and so you add a wrapper div then you add another wrapper div then you gotta put three sections together and those sections don't really go together so we have to add two wrapper divs. Now we're gonna absolutely position this other one so it needs a wrapper and all of a sudden now we have a page layout that if I read it, if I read the source code I can't really make heads or tails of it and it's frustrating later on down the line. I tend to think that when we're building a site it's not so frustrating. I get the layout, I just built it, it makes sense but if someone else on my team happens to need to jump in and work on it or if later on down the road I need to jump back in and work on it that's when I start to run into a problem. So again, we're thinking about our markup first and I just wanna show you an example of what is probably a pretty common HTML construct that most of us would be familiar with. It's an excerpt, it's a blog post excerpt basically. We have a title, we have a featured image, we have a little bit of information that I did not put in a paragraph tag we'll talk about that in a moment and then we have a button which is missing some additional information that it needs but I'm hoping that we can get past that. So we have all these elements, this is our beautiful markup, it's all ready to go. Here's a fun fact about Grid. The browser will assume that anything that doesn't have a wrapper has a wrapper which means that technically there are four elements inside this article right now. My title, my featured image, this random block of text and then my button. Why does this matter? Why do we care if that is an element or not? Well, the reason that we care, the reason that we care is that Grid will always show you or Grid will always arrange the elements that are the direct descendants of the parent Grid elements. So in this case, if article is our Grid element, these four items inside of it are Grid items. So if you're familiar with other frameworks that are sort of a little more BEM in nature, Foundation or Bootstrap or I use CSS wizardry Grids a lot or I used to, you kind of get the concept of what happens here. These are Grid items and then whatever styles I have applied to them will apply.  I don't have to do that with Grid because we're going to do all of the layout inside CSS itself. Another fun thing that you can do with Grid is the same thing you can do with Flexbox and you can change the order. So if when I showed this original HTML you thought to yourself, well, I would definitely put the image on top of that title. You're probably right, most people would. Image would go on top. It's not really the best semantic flow of information because really the title should be on the top and so by using the order property, we're able to switch the order of the article title and the featured image so that the featured image appears on top. This is where I have to plug another passion of mine which is accessibility. Don't move things around with order on your page in a way that would make it confusing for somebody who is not looking at the visual layout of your page. This is one that I feel is an okay compromise. As a matter of fact, it's actually probably a little bit more accessible because someone using a screen reader is gonna hear the title first and somebody who is viewing the page is going to see the image first. So in that way we've sort of targeted the capabilities of the users who are using the site and we have enhanced their experience. There are ways to do this that will break accessibility and so as with any layout that you do, it's really important that you pay attention to adjusting the visual order of the elements in the DOM using only CSS. So I wanna talk through a few definitions and things that you need to know so you can talk about grid intelligently. So the first one is a grid container. This is just the element that contains the grid. If you were laying out an entire page on a grid, this would be your page wrapper. This would be everything. I do not recommend you ever put it on the body tag, however. Grid items as we discussed a couple of minutes ago are elements that are direct descendants of the grid container and again, this is kind of implicit. You don't have to say, oh, by the way, this is a grid item. It will just know, which also means that you can target grid items using nth child selectors which again allows you to do even more without adding additional classes or otherwise identifying your elements using HTML that isn't necessary. So we'll go back to our little example here just as a reminder that each of these four items is a grid item within the parent grid article. One of the things that makes grid really a little bit hard to wrap your brain around at first is the idea of a grid line. So when you define a grid, you're not defining columns and rows. You're actually defining the lines around those columns and rows and they're referenced by numbers. Line one, line two, line three, line four. They begin with the outer borders of the grid and you can reference them with negative values. So you can count backwards. You can say I need this to be the, or I want to specify that this block starts at the negative third grid line which means that it will place it three items in from the end of the grid. When I figured out how to do this, I think I jumped up and down at my desk. I was so excited because there are so many things that, I mean I used unordered lists and nth child selectors to make these things sort of happen but now this is a tool that is totally 100% intended for layout that I can use to make these things happen. So I just want to showcase a little bit what the line numbering looks like. What you're seeing here is the element inspector or the grid element inspector inside of Firefox Nightly. I'll talk a little bit about that later as well. And you can see that the line numbers go from one through six in this particular grid and then the rows, remember grid is two dimensional, there are two rows in this example. We'll talk a little bit about how this behaves responsibly later as well. Also I totally took this picture yesterday and decided that I needed to put it inside this presentation. It's beautiful here, right? So I also, for me a click moment with grid lines was thinking about it the same way I think about calculating substrings. And this goes back, for me this goes back to like computer science 101, which is a class I actually took a long, long time ago. And this is how I was taught to calculate substrings so that I could make sure I was getting the characters I really wanted. Grid lines are the same way. You're counting from the spaces between rather than from the columns and rows themselves. I don't know if that will help you, but it helps me. So a grid cell, very much like tables, is the area that's created by the intersection of a row and a column. It's not a table. When I was first introduced to CSS Grid, I was told that it is basically just, it's new tables, we're all going back to table layouts again, except for they're better. It's not a table. It's like a table cell, but it is not a table. The ways that it's like a table cell are cool, though. You can position things much like you do with Flexbox at the beginning, in the middle, or the end, at the beginning, middle, or end in the other direction within those cells, which lets you create a kind of infinite number of layouts that will also adhere to exactly the rules that you specify and then will automatically size themselves into the space appropriately. My note about vertical centering in Grid, it's another thing that just sort of works. The way that we would expect it to work, because I never understood why I couldn't do it with regular divs in the first place. And so this is just showcasing what a grid cell looks like. We basically just have the intersection now of the second grid line to the third grid line, and the first grid line to the second grid line of my row. I mean, this could be defined in that explicit way. If I wanted to target this cell, if I wanted to define this cell, I would say that it is the cell that exists between the second and third column line and between the first and second row line. And I'll show that in text as well. A grid area is like a cell. It's a little bit like call span and row span if we're gonna go ahead and use our table analogy. And it's the rectangular area that's defined between grid lines. And this can be a collection of cells, or it could be just a single cell. It's also a shorthand notation, and it's a really clever shorthand notation, I think. It can be confusing if you're reading grid layout that you didn't write yourself what exactly this means, but it's much like the example I just showed you. We're starting in the second row and with the first column. We're going to the second row, which means we're only in the second row, and we're going to the fourth column. So this is a block that's going to span two columns wide, three columns wide, and it's going to all exist in the same row. This would be a great way to center something inside of a five column grid. And track is sort of the gender-neutral way to refer to rows and columns. It's either a vertical track or a horizontal track. If you were fond of those analogies from the SATs, a row is a track, but a track is not necessarily always a row. That's a good way to think about that one. And then again, just an example of how rows and columns would be laid out. Grid gap is a really, really powerful tool. Grid gap is what we always used to accomplish in grid systems that use floats or a flex box with pulling negative margins and all kinds of things like this. One note about the gap, you can't put things into it. So if you feel like you need something in the space between, maybe you want a border down the middle of that gap or something similar to that, you should actually have another grid element there. You should have another track rather than trying to stick something into the space. This is a mistake I made early on trying to absolutely position things inside the gutters. Just don't do that. It's a mess. So I want to sort of give a simple example now of how we would lay out a grid that would scale with the browser, that would apply a set of rules that we define for it and that would essentially just create a plain photo gallery, very similar to the examples that I had just shown. So the steps we take to do that is we're going to define the grid first and we're going to add all of the elements to the grid and these are the steps we're taking inside CSS. And then we're going to let the browser do all the math for us. As it turns out, computers are super good at math. Way better than me. I mean, I did for a while learn all of the percent calculations for turning Ms into pixels and all of that and you can really move away from a lot of that overhead and allow the browser to calculate it for you and it will also then behave responsibly and predictably. So this is what our HTML would look like for my photo gallery that I created with all the mountains. And this is it. It is literally just a list of images. We don't have to stick them inside divs, we don't have to put them inside an unordered list, although we could if Symantec's called for something like that, literally just a list of images and all of the CSS that it took to lay out that grid fits in these six lines. And then I want to talk a little bit about what these definitions mean. So the first one obviously we need to say that this is a grid. The second one is that we're setting up our columns. We're using the repeat modifier, which basically means that we're going to repeat this pattern until we hit the edge of the browser, until we hit the end of the content. We're going to autofill the space. This is why, and this is how I think grid is the most powerful for responsive design. And I'll talk about autofill in a second. And then we're going to tell the elements, the images, that they can never be smaller than 200 pixels wide. And then one FR stands for one fraction, not one French or a variety of other things that I think it stood for. And one fraction basically means that if I divide this grid into equal parts, one of those is the largest this can be. So my element will never exceed more than that. And so what this does in effect is that if I have a grid that is 600 pixels wide and it fits three items, you have 200, 200, 200. That's as small as they can be, so they're never going to be any smaller. As soon as I bump that grid down to 599, three items will no longer fit in 599 pixels. But I can't make my items any smaller than 200 pixels. So grid will automatically reflow all of that content and say, okay, the highest number that we can fit in 599 pixels is two. And those can be up to one FR, which means that they can be up to one half of the space. And this is how grid will automatically take you from a three grid to a two grid as soon as you exceed the amount of available space. We also have auto rows set, which does a similar thing. This basically says that my rows should always, they should never be any smaller than 150 pixels, and then they're going to repeat automatically. This is what lets the elements do what you would expect them to do if you floated them, except you don't need to clear anything. And then finally, we set a grid gap because it was very confusing to look at all those mountains smushed together, so we put a gap around them of 30 pixels. And then we have a layout that is responsive, that behaves predictably and intelligently, and we've written six lines of CSS. We didn't even need a media query to do that, although we certainly could have one if we wanted one. Something you'll hear a lot about if you are working with grid or if you're doing research on grid is implicit versus explicit grid. Grid is really cool because we have auto columns and auto rows and this idea that everything will just sort of calculate itself. You don't technically have to define your grid at all. Your grid is defined by the elements that are within it and by these few lines of code. And then again, you can see we're using nth child and first child selectors to specify exactly what sizes we want, not what sizes, but what spans we want these to take up. So the first child is going to be two rows. The second child is going to be at the end of the first line and then it's going to go two columns out. And so by doing that, now everything positions itself around those elements and then it automatically calculates. This is a really fun one to test just to build these and then see what happens as you move your browser window around because that's something that real users don't do but we as developers kind of all do all the time. So drag your browser up and down and see exactly how it behaves and you can add predictability by then more explicitly defining grid elements but you don't have to. This is really, really powerful in particular if you build tools for people who are self-publishing their own information. Do you know anybody who does that? So really important thing to think about. You can introduce some unpredictability if you're not careful about testing it but it gives you a lot of power. So thus far we've talked about laying out components with grid and we've really just thought about everything very modularly. But now I want to look at an example of grid in the wild in a little bit more depth and talk about how we would lay out an entire page full of components with grid. So we're going to go back to our example of the Women and Girls Foundation website here and the first thing that you'll notice is that I've highlighted, let me see if I can zoom this at all. No, I can't. I will make my slides available on Twitter and other various places for y'all to look at after the talk. But you can see that the header here we've used Flex to lay out the header. It didn't make sense to put this header on grid because I have never seen more of a call for Flexbox than the whole centered navigation of variable width and things on the side. So this is laid out with Flexbox as I mentioned earlier. It's also pinned at the top of the page so as we scroll it's going to stick around and it should not really comply with any of the other grid rules because it needs to feel like its own element. This is a step towards us building something that feels like an application like a web page which is the direction that I think we're all getting dragged in whether we like it or not. The hero which exists immediately below the header also does not use grid. For a variety of reasons, not least of which is this tricky little thing where stuff has to live on top of the wrapper but also extend all the way out to the edge of the page. This is something that we could do with grid but again because grid is so modular and this same hero construct is used on pages throughout the entire site and it's very independent of what the rest of the page looks like and it's very predictable sort of using our older tools. Older is not really the right word here. I still think this is the best fit and when I said earlier, you know, Flexbox versus grid, this is another one of those instances where deciding what makes the most sense for the layout you need to build is going to take over from struggle to fit it on the newest technology just for the sake of using the newest coolest thing. So we'll go in and we'll talk about this initiatives block again and now that I've explained what grid lines are these should make a lot more sense to you. We have set up our template columns so that we're repeating by three and that each one takes up one FR. Each one is one fraction of the page. As I scale this up and down, you're going to see that those shrink to a certain point and then at a certain point they're going to flip over and stack on top of one another. That was a design constraint of this particular project but all of that again is specified with grid. In this section and these can repeat indefinitely as well and they also do have a featured image sometimes although this example does not. These are really like the cards that I explained earlier. We've set a grid gap of 30 pixels for this. Really, really cool that we can set our gaps and gutters in pixels or in other units. We don't have to just rely on completely fluid percent based units so things become very predictable and then this would be an instance where we could roll media queries in in order to adjust the grid gap sort of site wide if that's something that we want to do as we scale down towards mobile device where we maybe only want 15 pixels of gap between each space. Usually that's for applying for on the side rather than in the middle. These are arranged into two sections and you can see from the inspector here that this particular element is using grid. I can point with this mouse. I'm going to do that. This is our content area and this is the same content area that's actually applied to the entire website so if you were to go into a single post it's also going to use this same area. We have an empty grid space on the left and an empty grid space on the right. We could have done that with a gap. We could have said that we want a humongous gap there. It really didn't make sense for what we wanted to do and there may be a time where we need to put something into that space. The biggest thing for that is so if you have ads that you have to put on your site I'm sorry but if you do and those have to have a very specific size we can now predict how the rest of the content is going to flow around those and we don't have to scale them up and down or let them take things over because we're able to specify with grid an exact pixel width for example for this column if we wanted to. You can also see in the middle of this there's this label that says post. In grid we can define the names of our elements which means that we can also write our CSS in a way that humans can understand it better. An example of that is naming that block post and then later when we're specifying the styles for that we can use post or as you see here we can specify styles within the post block based on their names. This section here, the grid template areas should start to feel like an actual grid. It feels like a table, looking at it I understand. I have a header that spans four columns I have meta information that spans four columns a featured image that spans four columns and in grid if you don't want anything to live inside of a column you just put a dot in that space. So I have written four or five lines of very human readable code that have just decided how that entire post will be displayed and then inside the grid inspector you can see how all of those names get applied to each section of the page. Now the meta is hiding behind the featured image because this post doesn't have a featured image but we're able to name and define these spaces and then lay out a grid that makes sense. So all that seems really cool. And I too immediately said, why would I use this? How many of my users aren't going to be able to even see this? And then, does that mean I have to write my styles twice? In my opinion this is the biggest misconception about grid. I was certain when we decided that we were going to use grid for that Women and Girls Foundation project I was very sure that we were going to duplicate our efforts in styles. As a matter of fact, I prepared the people who track our time and our effective hourly rates for that. So just be aware, we're not charging the client to build the styles twice but I think we're going to build them twice. We didn't have to. It was not nearly as painful as all of that. So first of all, support is good. That's good, that's a lot of green. Some caveats to that. Internet Explorer of course being one of them. Some older versions of Chrome. A very old version of Chrome that probably nobody has. But it's really easy to target browsers that will support grid using a feature query. We essentially just say, hey, do you support grid? And we put our styles inside of that. The alternative to this is to write all of your grid styles first and then reverse that. Instead, write the command so that you're checking if it doesn't support grid and if it doesn't support grid then you add additional styles on top of it. One thing that is cool about grid is that it's sort of internal to itself. So you can have styles that you would normally put on something that grid will ignore. I'm not going to get into that in too much depth because that gets a little bit out into the weeds of how the browser renders the content and I think that that would be a much longer discussion. But it's worth noting that a lot of the styles you might potentially already have in place could maybe stay if you were looking at revamping something that was a legacy layout. So we'll talk about the big blue elephant in the room. That sort of works. Internet Explorer does it differently. It does have an implicit grid, which is cool. You still have that power. It will support repeat functionality, which I think is one of the more powerful tools inside grid. It will support minmax, mincontent, and maxcontent. And the only thing with auto that you need to pay attention to is that it's different. It's different for IE. And for me, what that has always meant in practice is just test. If I'm not sure if Internet Explorer is going to treat some grid code that I've written the right way, test. And test early. So test before you build a bunch of other stuff on top of it. You should not be discouraged about Internet Explorer's slightly different implementation of the grid spec. Basically, they're using an older version is what's happening right now. Internet Explorer's version is prefixed. So if you put at sports grid in your code, Internet Explorer is going to tell you no. And then you can leverage an auto prefixer. I assume there are others, but the one that I like is called auto prefixer. You can leverage auto prefixer or other build tools that will basically transpile your CSS for you. It will turn your CSS into IE-compatible grid code. It'll add the prefixes, but it will also translate things like the grid gap, which IE famously had a little trouble with and other things of that nature. You definitely need to place things manually inside. If you're using grid inside Internet Explorer and if your layout is very complex, this may mean that you don't use grid at all in Internet Explorer and that you use a fallback. You can use grid gap, but you have to define extra things. And again, this is what the auto prefixer is going to help you with. You can't count backwards. So that cool thing where I could say like the third from the last element should do this, you can't. You have to really think about things in sort of your regular Cartesian XY coordinates. And then like I said earlier, test. Test very early and test the whole time. If you're doing automated testing even better, but if this is a smaller project and you're not doing something like that, test it. Look at it as a human being and make sure that it makes sense to you. The only thing you want to be aware of is that at some point in time, Microsoft is going to remove the prefix. Maybe they'll play by all the same rules as all the other browsers and if they do, then the code you already had in place will continue to work and you probably won't have to do anything. If the rules are slightly different or if some of your code was sort of very targeted, you might end up in a situation where the removal of the prefix will break some of your layouts and you'll have to go pay attention to those. It will never be as bad as the time that Microsoft rolled out automated browser updates to Internet Explorer 7 and I stayed awake for 36 hours fixing every website we ever built that was using a weird hack for Internet Explorer 6. Now you all know how old I am. So I think some things that are important to think about when developing for Grid, first of all, being kind is the most important thing. But be kind to your design team. Let them know that you have this new capability. And if you are the designer, cool, like you already know what you can do, but let them know that you have this capability and make them aware of what you're going to have to do for fallbacks. So maybe you are going to have to serve up something completely different for Internet Explorer and the example that I showed you does have a different layout for Internet Explorer. If you make the design team aware up front that they're going to not only be presenting slightly different layouts for different devices, but also potentially across browsers, they can prepare for that and then you won't get angry emails that say everything is broken. This is also in turn very kind to yourself because you won't get angry emails that say that everything is broken. You should also be kind to yourself because this is new. There's a ton of information out there. You can do all of this research. Everything I presented, I have a resources slide, and when I share the slides you'll get actual links to these things. Everything that I'm talking about, there are a ton of resources that you can leverage. There's a lot of help out there, but it's new.  It means that you need to learn how to do some things differently or you need to learn some new things. And then finally, be kind to your users. I did a little bit of Internet Explorer bashing which wasn't really fair. You still have users that use it. And I'm not talking about Edge, which is shiny and new, and I actually kind of like Edge. I'm talking about, you know, Susie who works at corporate who's never, ever, ever allowed to upgrade her XP machine. She needs to use your website too. And so pay attention. It might not be the same experience that you're giving her, but make sure that she can get to all the content. So a few more tips and tricks for working with Grid. Most of the examples that I showed were from the Firefox Nightly Grid Inspector. They are rolling out enhancements to this literally all the time. It's very, very cool. I don't know that I would be able to develop anything in Grid without it. You can essentially just click on any element that's built in Grid and it will give you all of the information about what you've actually put together, which can be incredibly valuable if you do have a weird inheritance case. So if you already have modular CSS and you've already built things into components, you might end up in some weird spaces with inheritance and this will help you find those and hunt down those bugs. The logo's pretty too. Grid is gonna help you to work smarter. You'll write simpler, more semantic HTML. The HTML that you write will look like HTML again. Oh, I miss those days so much. When I can just write HTML. I mean, don't get me wrong. I like the power I have now. But it will look like HTML again. It will look like content because after all, that's what we're doing. We're delivering content. So new developers will be able to more readily understand it. There's also the case for non-developers.  They know enough. Usually they say to me, why know enough to break stuff? Let's help them break fewer things. I mean, really, have you ever had to teach somebody how to set up two columns with short codes? It makes me cry. I write code for a living. You don't write fewer media queries. I think a lot of the planning that goes into building a grid layout eliminates the need for you to think in media queries, which in turn also lets your layout be a little closer to what I have always wanted, which is design-driven breakpoints instead of device-driven breakpoints. So what that means is it's intentional. It's not just because, oh, this happens to be where iPad is. It's because this is where it will look the most beautiful. This is where it will take the best advantage of the space available to it. And then, of course, you're going to write a lot fewer lines of CSS. I had a slide in here that showed all of the lines of CSS it took to build some of the grid elements that I showcased. And I took it out because it was horrifying. I think the point is clear. You can write a lot less CSS if you use grid intentionally. Grid also lets us think beyond the framework. You don't have to use 12 columns. Different pieces of your page don't even have to use the same number of columns. The columns don't have to be the same sizes. You're free. Fly. You can lay out anything. You can also use layout code that's specific to your content. And the design that you or your team have come up with, you don't have to sort of give your designers this grid and say, make sure everything you build is on this grid. Now, I know as a developer, I do not love relinquishing that level of control. I like being able to predict what the designs are going to look like when I get them. But it's important to move out of your comfort zone. You cannot just be bootstrapped for eternity. It can't. It's bigger than that. We're moving to a space where what we build is an application. And it's not a website anymore. Mix it up. Try something crazy. Maybe not on a production website that someone's paying you to build, but try something different. Use CSS shapes to make elements around your grid behave differently. Pay attention to what you can do. Follow some people on Twitter who are doing cool stuff with styles all the time. You're creating reactive layouts and eliminating breakpoints, which I kind of already mentioned here. This is truly responsive design. I think a lot of responsive design that I do is really technically fluid to a breakpoint or fluid between breakpoints. And it's not truly responsive. It doesn't think about things in two dimensions. You can do that with grid. So the slide is very, very simple because I am not advocating for a framework. I don't think that you should download a boilerplate theme. I don't think that you should say this is the grid based framework we're using henceforth and for all time. But there is a very cool theme that is an underscores based theme that is grid based. And it is a super cool starting point. If you're not sure if you're quite ready to jump in and start writing your own grid definitions, it's a great place to start. Like with any framework, however, it will be constraining. You will have to either modify it greatly or you will have to sort of fit within what it gives you. I do have a link to this in the resources slide at the end that I'll be sharing about it. It was where I started and I wanted to give a shout out to it. There are also a lot of resources that come along with it. And there is a talk that was given at WordCamp Europe that goes along with it as well. All very cool resources. So I promised in the abstract that I wrote two months ago that we would talk about whether or not your project is a good fit for grid. And then I wrote this talk and finished the talk and it wasn't just an abstract anymore and so yes, it is. The answer is probably yes. I can think of very few instances when a new build in particular would not benefit from some level of grid work. There are some things that you can ask yourself to help you determine if you want and how much grid you want to use. So like can you draw a grid on it? I'm not going to sing it for you. I'm not brave enough. But if you like it can you draw a grid on it? If you can, it's a grid based layout. Are you in charge of making or influencing design decisions? And this is an important one if you work with teams because the most amazing grid layout that does everything you want to design teams speck at a certain break point or is too different from what they built is not going to get the bills paid. So at the end of the day if you don't have some level of autonomy over the designs you may or may not want to use grid but this goes back to what I said earlier talk to your design team talk to the people you work with and let them know that there are new things available to you and that if they can give you some flexibility you can make them something amazing. Are you cool with layouts that differ between browsers? Yes, you are. You have to be. It's 2018. Your sites are responsive. You're making things intentionally different already. Your job as a developer is 50% making sure that you present the same information in a different way. So there are two ways you might start using grid right now. You can add new or replace existing components in a legacy theme. As I see it you can basically do this with every component in your theme until the entire thing was replaced with great components where they make sense. Because it happens in isolation new components are really good for this. I keep using the word component because it's really important to me that we think about design modularly like this. It has implications for your build process. It has implications for the way that you develop it has implications for performance. See me tonight after I've had a couple beers and I will gladly talk to you about performance until you are so sick of hearing about it that you can't stand. The other way is you can create an entirely new theme that is grid aware. This can either be modeled on an existing design or this can be a completely new design. I advocate for starting from the design phase with grid in mind if you can. So wrapping up I really love grid. I think that's probably obvious because this is a lot of power and it also lets us think about layout separate from content even more than we've ever been able to in the past. So I'll go back to my conclusion side. I hope that during the course of this talk I have shown you how you can work smarter so that your future work can be even smarter. I have shown you that thinking in patterns and building in blocks blocks feels like a thing, right? How many Gutenberg talks are here this week? This is important. Thinking about things this way helps and those CSS Grid and Gutenberg are not inherently tied together. I think that they can be and I think that there's a lot of power in that. Think in patterns, build in blocks. The fallbacks are easier than you expect them to be and let yourself be uncomfortable on purpose. This is not the same as what you did before. But if you've chosen writing code or front-end development or design as a career, nothing you do tomorrow is the same as anything most of the things you did yesterday. You probably learned 10 new things this morning and you've only been awake for a few hours. Be uncomfortable on purpose. It will make you better. It will make the Internet better. I'm getting very grand right now but the world is a better place when you step outside your comfort zone. I'm going to go ahead and wrap up there. I will take questions for a little bit and I actually don't know how much time I have left for questions, but I'm also happy to answer questions if you see me out and around. Yes. Thank you. Go ahead. The question was if there is a favorite learning resource for Learning Grid. I have several. These are all links in the version that I'll be posting on Twitter. Grid, by example, is excellent. Layoutland is a series of YouTube videos. Very, very good. CSS Tricks as always has great content on this. And then the Coon theme and the person who developed that also has a lot of great content on Grid. I think we're good. Thanks, everyone.


Welcome to a new Fresh Plastic video. In today's video we're going to make a basic mold using welding technique. It's an affordable and accessible way to make your molds. And overall, the more accurate you make your molds, the more accurate your output. So it's good to take your time and do it carefully. And for today's video we got our friend Taco from Mexico to help with that. Hi! Hi! Today we're going to make this tile. So first we need to make a mold by cutting the parts together and welding them. Using a serter punch, which is harder than our plate, we will draw a circumference of 7 cm and then divide it in 6 equal parts. Now that the hexagon is complete, we will cut it. Now we cut the walls. Now that we have all the parts, we will prepare them to be welded. After sanding the parts, we are going to weld them. But we really want the welding to penetrate, so we are going to remove this material in order to allow the welding to join and fuse to the parts. So this is what we want. Now we are going to fuse it together. So we have cut all the parts and we are going to weld them together into a mold. This is how it looks welded and this is grinded. Once the holes are made in the wall, we will make them also in the cap. So just like this, once the bolts are in place, we are going to weld everything together. The cap fits perfectly now, so all we need is fitting here. We will turn this cap into an nozzle by cutting this piece and making a hole through it. Just like this. Crutches. So this flat sheet will bend once the hot plastic is injected and you don't want them.  That's it. So before we inject the plastic, we need to clean it up a bit. Maybe sanding, maybe just scratching the excess of welding. While sanding, always remember to smooth the edges so you avoid future accidents. So now the mold is ready, it's time to inject some plastic. Now the mold is solid and ready and we are going to use the injection machine to make a tile. First we are going to turn on the machine, make sure the cap is in the bottom so it doesn't flip. We wait any minutes until it's molten enough to replace the cap with the mold and then we'll get it. So alright, the mold is now injected with molten plastic, we will turn the machine off. After cooling it down, we are going to open it up and finish out the piece. It's kind of an easy step but if you do it properly and with care, it will make you a piece better. Now the piece is ready because now it's cold and ready to be removed from the inside of the mold. We are going to take it apart and pull the piece out. So the piece is almost perfect, what needs to be done is we need to take a basic knife to remove the excess of... So now that our piece is finished, we need to stamp it with the right material which is polypropylene. Check the video on how to detail it to make it look very nice and also how to mark it with our stamps. So now I'm going to stamp and the product is ready. So this is how hexagonal tiles look like. So that was a video about how to make a welded mold, this time we did a very basic tile but as you can imagine... Many more is possible with this technique. So that was it for this video, if you have a question feel free to post it up in our forums and make sure to send us a picture of the welded mold you made or even upload your own video. Thanks for watching and see you next time!