We have got an early lock for the main slate today in MLB DFS. 12.35 p.m. Eastern is the lock for that. If you want to play the late slate for tonight, we'll talk about that later on today, but we're gonna blitz through the main slate for today. Let you know top three pitchers, top three stacks, hopefully get you on your way to starting off your day on a high note with some MLB DFS. Welcome on into the solo shop. That's right here on the FanDuel Podcast Network and NumberFire.com. My name is Jim Saunas. I am a senior writer and analyst for NumberFire. You're gonna break down this for a game main slate with lock set for 12.35 p.m. Eastern for today. As mentioned, I will break down the late slate tonight. If you want some thoughts on that, check out the episode description. Go to the timestamp there and I'll break down one pitcher, two stacks on the two game slate beginning at 7.07 p.m. Eastern for today. As for the main slate, no weather notes. So we'll dive on in and talk about the pitching preview in just one second. But first, a reminder to make sure you're subscribed to the NumberFire Daily Fantasy Podcast. Wherever you get your podcasts, you can also check out the solo shot over on the FanDuel YouTube page if you want a video version as well. If you like what you hear, give us a thumbs up on YouTube or leave us a five star rating over on Apple Podcasts. The second leg of horse racing's big three is here and FanDuel is the best place to bet the preakness stakes because right now all customers get a no sweat preakness bet up to $20. That means you'll get up to $20 back if your win bet doesn't win. Bet the preakness with America's number one sports book. Just visit racing.fanDuel.com for your chance to get a no sweat preakness bet up to $20 this Saturday. That's racing.fanDuel.com. Age and residency, restrictions apply, offer valid on first win wager, refund issued is non with travel racing site credit that expires on June 12th, 2023. Restricts his applies to terms at racing.fanDuel.com. Gambling problem, call 1-800-GAMBLER. Pitching preview for the main slave for today, Taj Bradley comes in with the highest salary on FanDuel. His salary is $10,200. Dylan Cease is down 98 with Logan Allen facing Cease in 94, Tyler Wells 92 with Eury Perez at $8,500. Now Cease has not been himself so far this year. And if you look at the recent game logs, I have not seen many signs of improvement either. But today he's facing the Guardians. I'm expecting Jose Ramirez to still be out. It's a rough offense. And I think that allows us to be on Cease today. The Guardians without Ramirez on the active roster have just a 72 WRC plus against Raidys with a 105 ISO. My goodness, that is wretched. Thankfully, Cease needs that because he's been struggling so far this year. The velocity is down. It had been looking like it was coming back up, but his most recent start Velo went back down. He's also been scaling back on his curve usage this year. And it was a good pitch for him last year. The X-Woba against that curve, according to Baseball's Avant, was 268. But it's 369 this year. The velocity on the pitch, the spin rate are both down. So it makes sense he'd scale back on it, but it hurts to lose a good pitch. And it doesn't make us feel good about Cease going forward knowing that one of his strikeout pitches is not a good part of his arsenal right now. But Cease is smart. He's a good pitcher, not just a good throw. He's a good pitcher. And he's been able to make it work at times. He threw six shutout innings against the Astros last week. And this offense is much worse than the one he faced there. So I don't mind pivoting off of Cease if you think he'll be popular, which could happen for sure. But just straight up, I think that Cease is the best pitcher on this slate, even with his struggles. So I like Cease. I think he's in the same tier as some other guys on the slate though. So even like I said, if you think Cease can be chalky, I'm okay pivoting, potentially within that exact same game. This White Sox offense, they struggled so far this year, but there's something pretty good against lefties. So maybe you don't wanna go to Logan Allen on the opposing side. I think he's pretty fun though. And Allen to me is going to be the top pivot away from Dylan Cease for today. Allen thus far has lived up to the hype. He came in with pretty high expectations because he is a well-regarded prospect, but early returns on him are very good. Across four starts, Allen has a 3.96 skill interactive ERA. His strike rate is 25%. And he backs up that strikeout rates with a 12.7% swinging strike rate. Allen has stretched out too. He's gotten eight strikeouts twice already thus far. So he's pitching well. And honestly, this isn't a huge surprise. Allen pitched well in triple A this year before his promotion. He was dominant in double A last year too. So I don't think we should be surprised. I don't think we should think this is flukey from Allen right now. It is a tough task for today, which is why Cease has a hair above him because Cease gets a very easy matchup. Allen does not. The White Sox against lefties, 131 WRC+, 220 ISO, but they also do have the highest strikeout rate on this slate. As a result of that, Allen leads my strikeout projections for the main slate at 6.2. I am fine buying into that, especially if it's a pivot off of Cease, if Cease will definitively be the more popular guy between the two. So to me, Cease is one, but Allen's in the same tier and if I'll get a big rostery discount, I'm fine going to Allen instead. With that said, I think there is a third guy in this tier too. And that third guy is similar to Allen, where he is a prospect, a guy who is young, coming up and impressing. It is Natasha Bradley. It's Auri Perez. Just 20 years old, I'm gonna make him our top value for today and the number three overall pitcher on the slate. Perez made the very difficult jump from double A to the majors. And that's a tough way to go, but he's looked good in both spots. I think we can justify using him today. It does help. He's in a good matchup, similar to Cease. He's facing the Nationals, 79 WRC plus against Reides, with a 103 ISO. Perez did let us some hard contact in his debut, so the lack of power in the opposing offense is definitely a good thing here. In that debut, Perez was throwing gas. And that's not just saying he's throwing hard, but it was unhittable. He can't hit gas and his swinging striker was 17% with a 35% strikeout rate. He was very, very good there. And like Allen, Perez is stretched out. He went 88 pitches in that game. He did hit 90 pitches in triple A. I have Perez projected for 5.02 strikeouts tonight, which is not as high as Allen, but he's in a plus matchup. He's at home. He's kind of fun. So I don't mind having some fun today, both with Allen and with Perez. So if you want to be off of Cease, I don't blame you. I think for single entry, I'm not going to Cease personally. I'd rather go to Perez or Allen, who might have lower roster rates. Perez, lower salary too. I think that's the preferred way to go. So straight up, I prefer Cease most because the matchup is so good. But if you want to pivot, I am fully on board with that for sure. Let's talk about some stacks for today. I do like stacks. Again, it's a small slate, just a four game slate, but really good options here. And I think the stacking options are better than the pitching options. That begins with the raise. We're facing Tyler McGill, who has some potential to be fun. He got strikeouts last year, even when he was a starter. This year though, that has not happened. And he's facing the raise today. And I think that we should stack the raise against him. McGill in eight starts has a 17% strikeout rates with a 12% walk rate and that low strikeout rate is validated by his swinging strike rate at 8.9%. Now those issues have not hurt McGill yet because his ERA is 4.02, which is actually better than what he had last year. But his skill interactive ERA is 5.44. His expected ERA is 5.90. He's doing a decent job with contact suppression with a 34% hard hit rate, but he has also had a lot of soft matchups. Look at the game logs, a lot of lower ranked offenses there. The raise aren't that. They have a 138 WRC plus against Reides with a 232 ISO. I am very willing to stack the raise here. I think they make a lot of sense and a team I want to be high on. The thing I love about the raise is the stolen bases because last night Kodesenga had 12 strikeouts against them.  Now maybe if Francisco Alvarez is not catching today, maybe that's not quite as prevalent, but they have five separate guys in this roster with a 170 ISO against Reides and at least throw three stolen bases. Those guys are Josh Lowe, Randy Arosa-Rena, Taylor Walls, Wander Franco and Jose Ciri. I think that's the kind of team we should want to build around in DFS. They have five of them all in the same roster that doesn't count some guys who are probably right beneath those thresholds. So I'd be sure to factor in speed when deciding which guys to include in this stack, but also every stack.  I don't think I've ever had eight stolen bases in one lineup. These matter a lot. We need to factor them in. And I think that's part of why the Reys make a lot of sense for stacking, not just today, but pretty much every day they are on the slate.  He has made changes that have helped him a bit, but I do still want to stack the Orioles against him. For the full season, Anderson has a 5.78 skill interactive ERA.  Over his past four starts, Anderson has cut back on his forcing fastballs in favor of more cutters and changeups. And his ERA in that time is good at 4.3. So that could lead you to believe he's turning things around. But his skill interactive ERA in that stretch is still 5.72, and that's even with some plus matchups in there. He faced the Brewers who adore striking out against lefties. He led a five runs to the Royals, three to the Guardians, and those are not great teams. The Orioles might be, it's a small sample, but against lefties, they have a 126 WRC plus with a 191 ISO. I do think Anderson will figure things out eventually cause he's a good pitcher, but he's not there yet. And I think that allows us to stack against him, especially when it's a team as good and as fun as the Orioles are for tonight. All the righties and switch hitters are fine in this lineup, but I also don't mind Cedric Mullins. Now, earlier on this year, they were facing a leftie and Mullins got dropped down the order. And that was kind of like a red flag. Like, okay, they don't trust Mullins against lefties, but he actually has more walks and strikeouts against them in a small sample this year. He was not terrible against lefties last year either, and he's willing to steal on them. So it's a lefty and lefty matchup. Mullins has not always had the faith of his managerial staff against lefties, but I faith in him personally. So assuming that Mullins does play and assuming he's not dropped way down the order, I'm very okay, even though he is a lefty facing Anderson here. Finally, for our third stack, I am gonna go with the Mets facing Taj Bradley. He is the highest salary guy in the slate. He is a super fun prospect. He looked great in his three big league starts. So this feels bad, not gonna lie, but I do still think we should stack against him here. Bradley was awesome early, and I wanna acknowledge that first and acknowledge how awesome he was. 38% strikeout rate in three starts, 3% walk rate. Those are great phenomenal numbers, but he is a big fly ball guy. He always has been and I'm not really sure if the strikeouts will remain that high because in those three starts, his swinging strike rate was 11.5%. It was 12.5% in triple A and the results against him down there were pretty rough, led up a lot of hard contact and we saw that in the majors as well. So Bradley is going to be good. I have no doubt about that, but I don't know if we need to avoid him on a four game slate just yet, especially if he is the highest salary guy in the slate, we can assume that a MET stack will not be that popular, but I kinda love it. It might go poorly, cause again, Bradley's good and he will be good, but I'd rather stack a good team in a mediocre matchup than stack a bad one with no power.  So I think you can be different without being dumb on this main slate, you know, going away from seats, going elsewhere, checking out teams like the METs potentially for stacking, I think that that is a fun formula for today. I'm going to keep on buying Brett Beatty within these MET stacks, his salary here down to $2,600, but he is still hitting the ball hard. He has got good plate discipline numbers. So I adore him here. I think that he is great in MET stacks or as a one-off piece of 26, if you need a salary saver to help you get to Mullins, help you get to all the high upside raise, I think that makes a lot of sense. So very okay with Brett Beatty within MET stacks or as a one-off. No things to watch here, cause we'll go through the late slate later on. So let's talk about Dinger picks for today on the main slate. The boring one, I'll go Ryan Mountcastle facing off with Anderson, fly ball pitcher, not the best park for home runs by any means, Baltimore, but I have a lot of power in this guy. So Ryan Mountcastle going to be the first Dinger pick for today. For the fun one, I will go Beatty. Again, I really love the contact profile. I think that's gonna start hitting Dinger's eventually. Got the MET off last night cause they're facing lefty back in there likely for today. So I think he goes deep against Bradley, fly ball pitcher, that's a plot hard contact. So Dinger calls for the main slate, Ryan Mountcastle and Brett Beatty. Before we finish up, do want to talk briefly on the after hours slate. That is a two game slate at 7 o' seven PM Eastern for today. As far as pitching goes, I feel best about Julio Arias a pitcher. He is facing the Cardinals who are very good against lefties, not a fun matchup, but Arias is very good. He has a 3.65 skill interactive ERA. Since adding his cutter this year, he has a 25% strikeout rate. So I don't like using lefties against the Cardinals, but I do think Arias is the best option among the pitchers for tonight. So Julio Arias, number one pitcher on the after hours slate. As far as stacks, I don't mind stacking the Dodgers on the other side of that game. They get Adam Wainwright and Wainwright struggled in his rehab stint. He struggled his first two starts in the majors. They've not been great. So I would love to stack against the guy with a better batted ball profile for stacking, but it's a two game slate, not a lot we can go towards. So I do think the Dodgers are the best stack on the after hours slate. As far as the second stack goes, I actually think I like the Blue Jays more than I like the Yankees. The Jays facing Nesta Cortez, Yankees get Jose Barrios. And if you had given me this matchup a month ago, maybe two weeks ago, I would have said, okay, we'll stack the Yankees instead of the Blue Jays, but Cortez really struggling with hard contact. The Jays not as lethal against lefties as they used to be, but I still don't mind going at them here.  So this is not a first. So I would go with the Jays as the preferred stack of that game over the Yankees, despite the fact it's Barrios. I know Barrios struggled for a long time. He's been a little bit better recently. So we'll go with the Dodgers, the one stack, the Jays to Yankees three, and Urias as a top pitcher on the after hours slate. That is all that we have here for today for this Thursday breakdown of MLB DFS, but we are back with you once again tomorrow to break down a full Friday slate to get that right as it is posted. Make sure you're subscribed to the number fire daily fantasy podcast scene wherever you get your podcast and also check us out over on the Fandall YouTube page. If you've got questions for me, I am on Twitter at Jim Sonnis, J-I-M-S-A-N-N-E-S. You can also follow the Fandall podcast network at Fandall podcast. Want to thank you all for tuning in for today. Good luck to you with your MLB DFS lineups. We'll talk to you once again tomorrow to break down Friday slate. This has done the solo shot right here on the Fandall podcast network.


The Food and Agriculture Organization of the United Nations was founded in 1945 with the vision to build a world free of hunger and malnutrition. Achieving food security for all is at the heart of FAO, but we cannot achieve this alone. Through our newly relaunched global internship, volunteers and fellows programs, FAO is providing talented young people and highly qualified experts around the world with the opportunity to get involved and work with FAO to ensure that together we can achieve zero hunger. Every year through the global internship, volunteers and fellows programs, FAO recruits hundreds of global citizens to work side by side with our global teams of experts and professionals, contributing their new perspectives and innovative ideas to realise sustainable agriculture and food systems. So, being an intern in an organisation such as FAO gives me the perfect platform and a learning opportunity to enhance and apply my academic knowledge and research interests. For me, I trust for some reasons because this is so important. First of all, FAO can show its commitment to the youth, the youth professionals of the world. The young volunteers is new blood for the institution. It means innovation, it means new ideas, it means new perspectives. Coming out of the pandemic, we remain deeply committed to achieving food security for all. We cannot help realise that goal without the help of youth and young talent. FAO interns, volunteers and fellows are a critical bridge to engaging people of various communities in the fight against hunger. We have collaborative partnerships in academic institutions, governments, civil society and the private sector. To leverage young talent from diverse backgrounds through the internship, volunteers and fellows program. The FAO intern, volunteer and fellows program is very important because it helps to build the capacity of young people. It helps the young people to be able to practice what they have been able to learn in school, especially when they are going to the field and they understand the challenges that the world is facing and through the practice they are able to become part of the solution that the world is looking for. I believe that the work that FAO is doing is extremely important because FAO is the one that has a direct impact on people's daily lives. I have the opportunity to realise which are the real needs of rural people in rural areas. We also have interns that come from the Indigenous University. Having their engagement is very important because Indigenous peoples are very important in the fight against hunger. I am originally from San Miguel Obetitlan, and I am from Oaxaca, Mexico. I am a coordinator at the local level of a collective called Yanyi Tundabedi Quitingdi. I am also part of the indigenous indigenous community of Latin America. It has enabled our youth, who are on the continent, to be able to get an opportunity to translate what they have learned in school, in theory, into the practical working environment. And if you're as lucky as I am, you might even get to go on mission and experience the field work. So I could learn from the reality which I cannot learn from the book or data from the monitor. I get an exposure to interact in a multicultural professional environment with people from different walks of life and learn a lot from them. There was never a dull moment. It was all something new to learn, some new skills to acquire. For me, there are a lot of things worth searching for. They will bring me some new ideas, some new work modes. Every day I have a really unique opportunity to work with experts, to share and discuss with them and to learn from them. So the mentorship that I get from FAO is very, very encouraging. The students who took FAO internship are strongly motivated to be global citizens who are worrying about global issues and are trying to find a solution for global problems. It's a great opportunity to grow in a professional way and we can really make a change on other people's way to live. The impact of the projects, when you see afterwards that communities are talking to each other, that communities are cooperating and with an aim to improve their own livelihoods, it's quite a rewarding experience. Join us in the fight against hunger. Bring your innovative ideas and enthusiasm. Together, let's create a zero-hunger world.


Hi and welcome to the session. Let's work out the following question. The question says evaluate integral x square divided by x square plus 6x plus 12 dx. Let us start with the solution to this question. Let i be the integral given to us at this integral x square divided by x square plus 6x plus 12 dx. This is equal to integral x square plus 6x plus 12 minus 6x minus 12 divided by x square plus 6x plus 12 dx. Now we take this in one bracket and this in one bracket and we separate these two terms. So we will have integral 1 upon x square plus 6x plus 12. Sorry here we will have integral 1 minus 6x plus 12 divided by x square plus 6x plus 12 dx and this is equal to Now integral of 1 dx is simply x minus 3 into integral 2x plus 4 divided by x square plus 6x plus 12 dx. Now what we have done is we have taken 3 common from the numerator. This is equal to x minus 3 into integral 2x plus 4 plus 2 minus 2 divided by x square plus 6x plus 12 dx. This is equal to x minus 3 into integral 2x plus 6 divided by x square plus 6x plus 12 dx minus 2 into integral dx upon x square plus 6x plus 12. Here also we see that we have taken this with this and then minus 2 with the denominator. This is equal to x minus 3 into log of mod x square plus 6x plus because we know that integral of derivative of a function divided by the function itself is log of mod of function minus 3 into 2 into integral dx upon x square plus 6x. Now 12 can be written as 9 plus 3. This is equal to x minus 3 into log of mod x square plus 6x plus 12 minus 6 into integral dx upon x plus 3 the whole square plus square root of 3 square. This is how we can write this. This is equal to x minus 3 into log of mod x square plus 6x plus 12 minus 6 into 1 by root 3 into tan inverse x plus 3 divided by root 3 plus the constant say c. So this is our answer to this question. I hope that you understood the solution and enjoyed the session. Have a good day.


Well, look at the line-up for Campion College in goal, Alex James, Jade Morgan, Marcus Steele, Brandon Muhammad, Matthew Rule, Elijah White, Jass Les, Jelani Harvick, Tyler Faulkner, Nikolai Banton, and Shandon McCrawlin, their coach by Ashton Blackson. Yeah, not a lot of members on the bench for Campion College, but look out for their number 18, Nikolai Banton, Barbados on the 15 international. He'll be looking to string those passes in midfield. The two captains, Elijah White and Robert Sowell, have the coin toss. Romario Francis giving them their instructions. Greeting the referees. Campion College seemingly will have the kickoff, but here's the line-up for Kingston College in goal. They have Malik Williams, they have a back forward, Robert Sowell, Anil Bryan, Rajay Zeminiz, and Kamal Patterson, three in the middle of the part, Dejan Green, Jaheem McLean, and Alex Hislop, and the wingers, Domain Smith and Kimani Rees, and the point man, Demario Daley, the number nine had a spectacular finish, was a fan goal of the week this week, their coach by Vassal Reynolds. Yeah, it's a Vassal Reynolds coach team, so expect them to be really compact and really be looking. Here are the full match highlights. Kingston College started brightly, and they had a few half chances in the first half, though tragedy would strike for them. Look at that attempt from Demario Daley, acrobatic in nature. That shot would have tested goalkeeper Alex James. Came from Alex Hislop, parried away. But in the 20th minute, Malik Williams gifted Faulkner this goal, a back pass directly to the champion, number 16, and he made no mistake from point blank range. Heartbreak, heart ache. For Kingston College at that moment, the salutes were on. Look at this ball over the top, over Malik Williams, misjudging it, and Jazz Les, putting himself in the line of fire really, heading on, running into the upright, and that was goal to convert for Jazz Les. Kingston College would continue to fight back though, and this was a build-up play again. Robert Sow rise in, unable to get that header on target. This was a just to be of offside. It was converted by the substitute, Deshaun Byfield, but the offside flag was up. They didn't give up. Look at this attempted bicycle kick from Demario Daley again. Second acrobatic attempt. Jazz Les would have a shot, and another header from Byfield, rather from Daley. But second half action, the revival would start by Byfield. Coming inside, playing the ball through to Daley. He fired home from point blank range. That was the beginning of the comeback for Kingston College. What a moment for them. Hope was rising at the Ashenheim Stadium. Cool finish from point blank range. Demario Daley, the number nine, 11 goals on the season. This came forward and had to be powered away by goalkeeper Alex James. Kimani Rees had this delivery. It was played out. And Anil Bryan, the transfer from Tietj field. He struck that one with confidence and bang in the back of the net. The number four, Falkingston College coming up trumps 2-2 at that time. In at a time, that ball flicked across by Elijah White. And the captain to the captain. What a gift. 3-2 for Kingston College. They win courtesy of that conversion by the captain Robert Xiao. Relief, finality. Romario Frantz, sign off. Here are the match statistics. Three shots from five on target for Campion. Ten shots from 27. For Kingston College, six fouls apiece. Three yellow cards for Kingston College. One for Campion College. They also shown a red card. Kingston College, they had six offsides, including that closely contested one that was converted by Byfield. Two for Campion College. Kingston College, their attacking prowess was showing in the corner statistic. Nine corners to Campion Colleges. Two Alex James had to make five saves and the line she had the possession as well as the majority of the goals to Kingston College. 60% of possession. Three goals for them. Campion only at two. We go to Kimani. He has the man of the match. Thank you, Dean. I'm joined by one of the match, Demario Daley of Kingston College. Congratulations, sir. All right, let me have a little chat with you now, Demario. You just told me that you feel emotional right now. Speak to me about the feelings you're having. Well, we came into the game. We came out a little not strong enough, but we just came out to the half time and said we're going to come stronger because it really means far but never yield. But that's what I told my team. We're going to come again and conquer this second half. And in terms of your coach, how much did he instill in you guys the confidence to come back today? Well, as forties, we have this lion heart mentality. So we never give up.  That's how we did. And talk to me about the crowd in particular because you have a lot of support in the crowd. How much did that play a factor in you coming back? Well, all of my people are KC old boys. All of my people came to KC. So I went to my fans because they really care for me and they take care of me. So I showed them that love that I'm here for them. I'm going to bring them and be started for them. I'm going to do everything for them. So I just went to them and showed them come again already. And you told me in particular that you wanted this man of the match here today? Yeah, the Camperdon match and the Charlie Smith match. I really wanted it. But you never rush God's timing. I really prayed for this one. I saw my saver would come out here and play to the highest of my abilities for my team. And I just got this man of the match. So I'm very thankful and grateful for you guys choosing me for this man of the match. All right, congratulations to Mario. Thank you. All the best. Yeah, that's the Mario. I'm very...


It's okay.  Are you depressed? Are you angry? Are you sad? It's okay Welcome to another motivational Monday talk. Today. I want to talk to you a little bit about Just chilling out a little bit. It's okay Everything's gonna be alright, and if it's not yet alright, then it's not yet the end, right? That rhymes kind of cool kind of funky I had this woman in my 30 day no alcohol challenge closed Facebook group last week and she was really upset with herself because She's doing this 30 day no alcohol challenge, and she had a drink on day 16 or 17 She cracked she broke and she was really upset and God bless her She admitted that she she cheated and that she had the drink and she talked about it in this this Facebook group And she was so down on herself. She was so upset. She was depressed and she was using words like I feel like a loser I'm no good, and my reaction to that was it's okay. It's okay We've all just got to like calm down just a little bit We put so much pressure on ourselves to perform and to be the best and to live these happy lives all the time We're not always going to be perfect. We're not always going to be constantly happy We're not always going to be flourishing in life. They're gonna have we're gonna have down times as well And you know what it's okay, so if you're watching this right now, and you don't feel like you earn enough money or Your girlfriend or your boyfriend just broke up with you, and you're feeling a little bit down Or you're struggling with the relationship with your parents or you're not achieving your goals or whatever It's okay Now it's not okay to just lament that and say well my kind of life sucks, and you just be Andrew along That's not okay because you always want to be striving for the best you always want to be trying to achieve your goals You always want to be moving ahead Because in life it's like the trees the flowers the grass if you're not watering them if they're not growing They're dying and humans are the same if we're not growing we're dying not physically but spiritually just a little bit of us Is dying every day so always be moving forward always be trying to achieve Everything that you've dreamed of But if you have setbacks along the way It's okay.  Oh, okay. Here's the plateau. Here's the setback.   Oh, here's the setback. I feel sad today. I feel angry feel upset things aren't happening That's okay. Just notice it. Just recognize it and then Go again because you know what it's okay Everything's gonna be alright in the end, and if it's not yet alright, then it's not yet the end I read this amazing book called the happiness hypothesis by Jonathan height and he says that People need adversity Setbacks and perhaps even trauma to reach the highest levels of strength fulfillment and personal development So it's okay if something wrong happens. It's okay if something bad happens. It's okay


The Monster, Derek Henry, Seth, Rashawn Evans, A.J. Brown, taking them to school. We welcome you to another edition of Titan's All Access with Amy Wells. I'm Mike Keith and Coach Dave McGinnis from Titans Radio's here. So you know it's a special show. How is everybody? Amy, how are you? So good. And Coach Mack, I know you're ready because it's time to review the schedule. Mike Keith and Amy Wells, I can't wait for this. I absolutely love this. All right, I'm gonna jump right in and take a look at the Titans 2020 schedule. So here we go. The Tennessee Titans are gonna open up in prime time. The final game of kickoff weekend, the Titans will play at Denver Monday Night Football September the 14th. The game will kick off at 9, 10 central time. By the way, September 14th is the latest date for a Titans first game ever and the latest first game for the franchise since 1977. The Titans will host their home opener the following Sunday, September 20th at Nissan Stadium against AFC South rival, Jacksonville. Week three sees Tennessee travel to Minnesota. The last time the Titans and the Vikings met the 2016 season opener. The first quarter of the season ends with a home date against the Pittsburgh Steelers. Then come two more games at Nissan Stadium. That's right, the Titans have three straight home games to begin October. Following the game with the Steelers the Titans host Buffalo on October the 11th and Houston on October the 18th. The bye week comes in week seven. Tennessee will then hit the road for the first time in six weeks as the Titans make a November first visit to Cincinnati. Only a brief road trip as it's back to Nissan Stadium for two more in a row. The Bears come to Nashville on November the 8th and then the Colts hit town for Thursday night football on November the 12th. From there, lots and lots of road work. At Baltimore on November the 22nd at Indianapolis on November the 29th. December starts with a visit from the Cleveland Browns. The Titans then head south to Jacksonville on December the 13th. Week 15, final home game of the regular season. Tennessee will host Detroit on either Saturday, December 19th or Sunday, December the 20th. That date will be determined later in the regular season. And then the very tough ending. Sunday night football at Green Bay on December the 27th. Followed by at Houston in week 17. That comes on January the 3rd. So Amy Wells, I'm going to turn it over to you and Coach Mack to kind of hit it here. Take us through the high points of what you just heard. Coach Mack, you are the authority on all things coaching. So as a coach, what is the first thing that you look at when you receive the schedule? Well, the first thing that stands out to me when I just look at it. I want to see where the AFC games are. Not necessarily where the division games are. I want to see where the conference games are. And it really sticks out to me. We've got four at home early. Five of six of those AFC games. So there are three prime time games for the Tennessee Titans. Is that a reflection of how much success the Tennessee Titans had in 2019? It absolutely is. I mean, that's the reward that comes with having a significant season before. And clearly getting to the AFC championship game, this is very much a validation of what you did last year. People want to see it. I love it. Now, it seems to me that having three straight home games is a pretty big advantage for the Tennessee Titans. So I have two questions here. Is that true first? And then what does the team have to do to really take advantage of having three home games in a row? Well, I mean, we just listened to Mike Keith say when he paused after he got through the home game, the early schedule, that now you have to go on the road. If you're going to reap the benefits of three home games, you're going to have to pay the toll in away games later on in the season. So when you get those home games early, I mean, the very definite answer is, you have to first, you have to be prepared for it. You got to win them. Now, here's another two-part question. Which is the bigger challenge, Coach Mack? Is it harder to have a very, very, very, very late Monday night game in Denver and then a short week to get ready for Jacksonville or to have back-to-back road games in November at Baltimore and at Indy? Back-to-back at Baltimore at Indy, late in the season. Here's the reasons why. Late in the season, at Baltimore, you're thinking whether to begin with, right? You're whether to begin with. Those are AFC games, much more difficult. Look, if you're going to play the opener on Monday night, you want to have a division opponent that you are familiar with on the following Sunday. Because your preparation can already be in the can. You know who you're playing. The tough thing about playing on the road on Monday night for an opener is if, when you come back, your second opponent is also an unfamiliar opponent. Because that just puts a lot of strain on your pre-preparation. So are you pleased with having a week seven buy? Is that a good time for a buy week? Well, I mean, any coach is going to tell you that the buy is fine with them. Because you've got no control over it. But look, you've got those six games before that buy. And as I've already mentioned, you've got four of those at home, five of them are AFC games.  And you come through those with advantageous wins. You've set yourself up pretty nice. All right, Coach Mack. Give me the game on the schedule that jumps out at you the most and tell us why. I am looking at that at Indie game late. You're in the grind part of the season then. You're going to go to a very emotional game at Baltimore.  We got over that hurdle a little last year. We got to keep jumping that hurdle. All right, let's talk about a couple other things going on with the Titans outside of schedule. A guy that we've seen a lot of in the last few years, Jonathan Joseph, a defensive back from the Houston Texans, signed by the Titans as a free agent. How can Jonathan Joseph factor into the Titans defense in 2020? Mike, I listened to his press conference today and I was really impressed. I mean, you can tell that that's a vet. He's a vet. He gets it. One of the best answers he had. Look, I coached a Hall of Fame cornerback in Aeneas Williams. And I could just hear Aeneas talking through what Jonathan Joseph was saying. The question was about his 4-3-1 speed. He said, look, I ran 4-3-1 one time. I haven't run a 40 since. He said, there's a time to run fast and there's a time to know when to play fast. That was such a veteran answer. Just listening to that guy talk, he's exactly who you want on your team. He's exactly who you want in the locker room. I mean, I'm going to be a favorite of this guy immediately. The good news about him is I don't know if he runs 4-3-1 anymore, but I'm confident that he doesn't run 5-3-1. Well, let me just say this. Any time your starting point is 4-3-1, if you get slower from there, you're still a fast human. You're still OK. Coach David McGinnis, thank you so much for taking time with us on Titans All Access. Well, my pleasure. Love it. All right. When we come back, Amy Wells is going to do some checking in in John Robinson's house with his daughters, Taylor and Bailey. Stay tuned. Hey, guys, this is Mike Brable from the Tennessee Titans. I want to thank all those amazing doctors and nurses and health care professionals at St. Thomas and Ascension during this COVID-19.  I want to thank you for putting our community's well-being before your own, and hopefully that we can emulate what you guys have done during this trying time. I want to thank you again. Taylor and Bailey Robinson are the daughters of Titans general manager John Robinson. But that's not really your claim to fame. Your claim to fame is producing all the video content for the Tennessee Titans during the draft. You gave us all of the behind-the-scenes looks. So hello. It's good to see you guys. Hi. Now I want to know what it was like really spending time with your dad during the draft. Most of the time it was fine. He was pretty chill until it got to when we were about to make the pick. And we were in the draft room and it was just, I was like stressed just watching him let alone. Like I can't imagine what he was thinking. But overall it was very good, very chill. It was cool to see dad speaking to all of them and seeing who they picked and the whole draft. Now Taylor, was there anything that surprised you seeing this whole process unfold? I honestly, just how busy it all was was surprising. I knew it would be like obviously it'd be busy. It's a very stressful thing. But just even online how much is going on and how it's like there's even at the last minute he could make a trade like in my mind like watching it at home in previous years I think, oh he knows what he's doing already. He's going into it kind of set in stone plan but it's not like that at all. Like right before we picked, I can't remember when. He was calling people about to trade and I was like, what is going on? Like it was just crazy. Whose idea was it to have you guys be such a big part of this at home drafting process? So I started making those little videos like throughout the week like showing kind of what our quarantine was like and Nate, he's in charge of like the Titan social media and everything. He posted one a few weeks ago and he reached out to me and my mom and was like, do you think Taylor would want to help get us some content because we can't, no one, there would be no other way to get content. And so me and Bailey just started videoing and it was really fun. Now you mentioned that vlog that you guys have been putting up. How did that start? And how did you convince your parents to be part of it? So it started over spring break with my friend and that's when like the first one happened and over spring break, it was just us and every day we did a little vlog and it was like less than five minutes, super short. And then I started doing them, like at home we'd going, you know, deliver my friends, you know, Starbucks was during quarantine and just like doing all these other things and it just become more and more, just more things that we're vlogging. It's really fun. Bailey, have you gotten a lot of attention for your showcase on the vlog? Yes. My dad said that a lot of people laugh at like the, for the first vlog, he said that everyone, like the different parts of like that screaming a lot. And then I hand the stop screaming. Do you guys like having him home during this draft? Is that kind of a cool thing? Yeah, it was really cool. Like it was a really cool once in a life experience. Like I don't know when I'll be able to do something like that again. It was really cool just to see behind scenes. And it was like, I like how I get to see like every day and the earlier in time and then I get to eat dinner a lot. All right, well girls, we have high expectations for more Robinson family content coming to us soon. Thank you so much for taking some time to chat with me a little bit. Yeah, thanks for having us. Thank you. Hi guys, this is Jeff from Simmonds. I just want to give a major shout out to all the doctors and nurses that essential same time is. And I just want to tell you how much we appreciate you guys and keep going, working hard. Thank you guys. Amy Wells and I are pleased to be joined on Titans All Access by our friend, Lance Smith. Lance, welcome to the program. Hey guys, good to see you. Even if it is in these little boxes, we're getting used to this way of life, but I can't wait to see you face to face again. All right, well, we look forward to seeing you as well. And we look forward to hearing about this week's Titans fan who's in our 49th state I hear. Ah, very good. Yeah, that's right, Alaska. Mike, I love hearing from fans far and wide and we have a really great international fan base. You know, the Titans brand travels. Well, we've got a huge German fan base that comes to the games. But this guy, John up in Alaska, I met on social media some years ago. He said, you got a cool job. I said, I know. And I actually got to meet him face to face when he came to a game last season. But I thought who better to interview for our fan zone piece than this guy, my guy up in Alaska, JD, who got fan zoned. Join now from way up north, my buddy, JD Richardson. How are you, man? I'm fantastic, man. Thank you. It's so good to talk to you. You live in Alaska. You're repping the Titans gear. How does someone in Alaska become a Tennessee Titans fan? Yeah, it all happened. I think I was like eight years old and it was a Sunday morning. I think I was waiting for my family to get ready for church and turned on some NFL football. I saw the two-tone blue, Eddie George, Steve McNair and they got me into football. So we're not really obligated to a specific team up here. A lot of people, they like to go with the Seattle Seahawks because of the closest state to us. I'm different and chose my own path and stuck with the Titans. Do you have a favorite Titan player of all time? I do have a favorite player. It's Eddie George. I was born on July 27th and that's one of the things that got me interested in the Titans. I saw Eddie tear it up, we're in 27. But besides Eddie, I'd probably have to say Javon Curse, the freak. So he was a lot of fun to watch, really charismatic and we drafted him. So he used the original type. Yeah, like you, see, I'm September 27th, my birthday, 9 27, so I've got the full look up there. What's the most common misconception someone say from Tennessee might have about someone who lives in Alaska, like your lifestyle? Yeah, I probably say there's no snow 24-7. We do have seasons. It's a pretty typical upbringing, but we're obviously distant from people, but we're not isolated. We're well connected with everyone else in the lower 48, but kind of exotic in its own way. Yeah, no, that's great. So you're not, that's not an igloo that you're actually living in currently. Yeah, it's a three-story igloo. That's great, man. Thank you for hopping on here.  I'm glad we're friends. I'm glad I met online before you go. From way long distance, give me a big old tighten up. I know. There you go, JD, you've been fanzoned. I appreciate it, man. Take care. Thank you, man. Take care. Lance is always an adventure when you're on this show and who knew you were going to take us all the way to Alaska. Thanks, Lance. Thanks, guys. All right, we have so much more Titans All Access when we return, including a trip into the community to do a little bit of good with Blues Clues himself, Joshua Kalu. Stick around. Hey, this is just a special message to all those caretakers, all those people out there in the front line trying to take care of this pandemic, man. Just want to tell you, we appreciate you. Keep up the fight. We couldn't do this without you. My wife herself is a nurse. She's out there in the front line. So I definitely have an understanding and appreciation for what y'all do and just keep it going. God bless. We're always proud of our Tennessee Titans when they get out in the community. But right now, well, even more so. Amy, a lot of our frontline medical people and our emergency responders are getting visits from Tennessee Titans and it's making a difference.  Taylor Lawon and Ryan Tannehill have been donating food and speaking with first responders. John O. Smith has been donating meals. Malcolm Butler has been collecting supplies. There are so many Titans out in the community right now. We could do a whole show just on this topic alone. But right now, we're going to show you one of the latest examples of a Titan in his community making a difference. This is Joshua Kalu in Houston. Watch this. Y'all keep doing your thing there. I'm a comfy gel and everything's a big deal. I got y'all. We all agree. I know. You're about to be hangry. Nah, don't do that now. Don't do that. Those patients need tender love and affection, you know what I'm saying? Okay. Yeah. I'm gonna make sure your belly's good so y'all can go ahead and do your thing. We all say it live. I know, that's what I'm saying. Okay. All right, I'll see y'all soon. Okay, bye-bye. Everyone likes it. Thank you for your support. Plenty of people, they'll be eating very well. To a friend of mine, family friend, grilled with this guy and went to high school with him. His family owns a restaurant. Stopping to be messy grills. Very local. Limp it up in the kitchen doing everything you need to do. I'm so glad to help. And if you need anything else, let us know. I'm from Ailey, Texas. And we got to look out for each other.  We're all trying to stick together, band together. But everything going on. I told myself, let me use local businesses and support our nurses at the same time. Now in the back, we got a whole bunch of food. Nicely prepared rice, shish kebabs. We got chicken, steak. We got comets in the back. We got salad in the back and the breadsticks. Not just some sandwiches. I don't have to do a beer for them. You know, they've been battling and battling. Long hours, day and night. My sister, she's one of the people that I'm feeding today too. And I have another sister in New York right now. She sees the first hands. She's been telling us it's not discriminated. It's something that everybody should take serious. I just felt like all this is about to be to go out and do what I can to support our nurses and everybody in that field. And my guy Obo to pull up. Los Angeles Rams, you know, come help and support. My name is Joshua Kalu. Got a company called Free Blue. My mission is to use local businesses to help out our local nurses, you know, keep fighting. Let them know that we're here to support them and they can keep supporting those patients, giving them tender love and care and affection and all of them good stuff. Thank you. When Amy Wells and I come back, we talk about honors for the Tennessee Titans from the Tennessee Sports Hall of Fame. That's next on Titans All Accents. On August the first at the Omni Nashville, the Tennessee Sports Hall of Fame will induct its 55th class. Gonna be a lot of fun. People like Jeff Fisher, like Heath Chuler, like D'Angelo Williams, like Dick Horton, like Sonny Smith, like Tim Corbin, like all kinds of people.  They have a slate of honorees and the Tennessee Titans, Amy Wells, are a big part of that. That's so awesome. It's such a big night, the Tennessee Sports Hall of Fame induction. And I think Titans fans would like to be involved, Mike Heath, can you tell them how to do that? So if you wanna be a part of what is gonna be a great night, the honorees, the inductees, everything that goes on, let's repeat it once again. Tennessee Sports Hall of Fame, August the first, Omni Nashville. For tickets, go to tshf.net. You can get a single ticket or if you're like Amy, just buy a whole table and have all your friends there. I am very rich and have many friends. So this is clearly what I'm going to do. So that's gonna do it for this edition of Titans All Access. Amy Wells, it's been good seeing you. Mike Heath, it's been good to see you as well. I always look forward to these times. Me too. For Amy, I might, thanks for watching and we'll see you next time.


ೀ.. ೀ.. ೚.. ೚.. ್.. ೐.. ೚.. ೀ.. ೑.. ೀ.. ೇ.. ್�.. ೄ..Careful measures will be taken when gentle rain means that approach. Access always needs to be maintained. There are two approachendaoshas which are something that is public. That is to say woman who sits in抱行, warehouse which is a Dutch restaurant like an eyeshadow.


So constipation is just this, you're all the time foraging on this and that. In southern India, we found one magic, it will keep your elementary track clean. A clean colon is very vital for health. If you're eating off the fast food joints or off the supermarket shelves, you will be generally eating foods of very low water content. If there is non-vegetarian diet, then also it is a problem because the moment is very slow in the system. Any food that you eat should have high water content in it. Your body is over 70% water content. If you eat any vegetable, generally it's over 70% water content. Fruit is over 90% water content. So if you bring sufficient amount of vegetables and fruits and nuts and sprouts like this, the moment of the bubble will not be a problem at all. You're eating very dry foods which have no water content in it. So if you bring in sufficient amount of fruit, vegetable, nuts and sprouts, this should take care of it itself. So constipation is just this, you're all the time foraging on this and that. If there's enough time between your meals, one meal and the other, you will not be constipated all the time if you're foraging, then it's an issue. Generally, traditionally, ghee was always eaten as the first mouthful. Ghee is a lubricant which lubricates the entire alimentary canal.  At the same time, if you eat ghee and carbohydrates together, if you ghee and sugar together, then it adds us fat.  So one who consumes ghee in a proper manner, that person's colon will always be clean because nothing sticks there, nothing stays there for long periods of time. So in the yoga center, the day starts with a small marble-sized ball of neem and turmeric. There are many aspects to this of what impact it has on your system. One immediate thing it will do is, it will keep your alimentary tract clean. When we say clean, this is a region where you have maximum amount of other life. So within this alimentary tract, there are a whole host of microorganisms. Many of them have turned friendly to us. We are living because of them. We are able to digest food because of them. Many, many functions in the body happen because of them. But still there are many who are harmful to us. The uniqueness of neem, especially when it is taken along with turmeric, if these two things go together, largely those things which are not necessary for the body, those things that which can harm the body, any kind of parasitic life which is there, all these things get eliminated. A clean colon is very vital for health. Daily products have certain enzymes which are used today to manufacture certain textile adhesives. These adhesives are not water soluble. So when you consume lot of dairy product, it goes and sticks in your colon. So the waste material which should have easily flown out, will not flow out of the system. It's a magical three fruits of tropical world. Mixing them in the right way, the trifle with a little bit of water or a spoon of milk or something, if you take it or even honey, if you take it, the cleansing in the system will happen. But if you can't find all this, in southern India we found one magic. This is called as castor oil. Just a little bit. Half a spoon of castor oil every day in the night, warm it, put it in water or milk and drink it up. You will see your colon remains clean. If you don't know this, today doctors are acknowledging it. What is happening in your mind and what is happening down there are connected. We have always said this in yoga. If you are constipated in your emotion and in your thought, you will naturally get constipated down there also. You know this? See how your brain and the other part are connected.   If you get scared, you'll either have loose motion or you'll get constipated.  Either it is being dispensed at inopportune moments or it's being stored up.  Both ways what is happening in your mind and what is happening down there are connected.


I would like to take the opportunity to introduce our next speaker, Cori Zhu. He will be talking about modern JavaScript for Python developers. Cori is a web developer and entrepreneur. After being the CTO of Tomachi from 2006 to 2017, Cori's moved on to his own side project and he has an impressive list of them. Cori got into Python in the early days of Django and hasn't looked back. Without further ado, I would like to present Cori. Take it away. Awesome. Thank you. I'm going to try to do the screen share again. This works. We see you. Cool. Thanks, everybody. Welcome. Today I want to talk to you about JavaScript. My wife made me at the slide. I was going to jump in. David introduced me. I don't need to say too much here. I was the CTO of a company called Tomachi from 2006 to 2017. I remain the top contributor to our main repository, which is a source of pride for me. I'm sure I'll get past soon. Since 2017, I have become a serial side project maker and entrepreneur. I make internet experiments and try to sell things online. Why are we talking about JavaScript at Python? Your first reaction is JavaScript. Your second reaction might be something like this, which I won't read aloud. JavaScript maybe gets a little bit of a bad rap in the programming world. This is another one that you kind of see tossed around. There aren't many good parts of JavaScript. When I was googling for memes, I found this one, which I don't really understand it, but I love how happy the Python guy looks. I thought I would throw it in here. I think JavaScript can be stigmatized, especially by those in the Python world who think that Python is the greatest thing in the world, which I kind of believe and probably a lot of us do. But if you're a web developer in 2020, then you probably need to use JavaScript. It's everywhere, it's sort of unavoidable at this point. Also, I will say that JavaScript is not so bad. It's come a long way in the last 10 or 15 years since I first started my career in web development. I'll show you a few of the things that you may or may not know that JavaScript does these days and can do these days. But once you wrap your head around it, the modern JavaScript ecosystem and developer experience is actually pretty decent. In 2008, when I first started doing a lot of web development, JavaScript was pretty straightforward. It was this thing that you put on your website when you wanted to add some dynamic functionality, maybe a little modal or an auto completion widget or something like that. You threw it on, maybe use jQuery. That was around back then. But by and large, it was this relatively simple and for anybody who's tried to sort of get into JavaScript in 2020, it looks a lot more like this. You may or may not recognize some of these logos, all of these logos. But essentially, JavaScript today is, there's a ton going on. There's package managers, there's frameworks. There are entirely new versions of the language, like TypeScript, and it's quite a lot. It's quite intimidating. And especially as someone who identifies as a Python developer, just kind of wanting to use JavaScript to serve my sort of web development needs, it was really difficult to sort of break into this world and figure out what all was going on here. And so my goal is to teach you, I guess sort of what I've learned, hopefully what you need to know in order to use modern JavaScript in your web apps in 2020. And I'm assuming you, like me, are Python developers. My background is primarily in Django. I've built a few class gaps. So a lot of the examples in this talk will be based on Django. And I'll say at the top that this talk is based on a series of articles that I wrote. And I'll link to those in the discourse and in the slides. So there's a lot more detail in there. So hopefully if I go too fast or I cover things that you don't land, you can always go back and refer to these articles where there's sort of a lot more detail, a lot more depth to everything I'm going to talk about. So I want to kind of start by sort of describing how most front-end code bases that I've worked on have evolved. And so we would start out where, you know, for me it's usually Django, but building out a site using your normal sort of Django or Flask tools, your views on your templates, you realize you need something dynamic to happen on the page. And so you go to Stack Overflow, you find a little snippet of JavaScript that does the thing that you need. You maybe add a script tag to include some library from a CDN, or maybe you copy and paste it into your app. And then you go to one. And this, you know, this isn't necessarily a bad thing. And for small projects, this works totally fine. If your project is not sort of too front-end heavy or too large, this isn't too much of a problem, you can go pretty far. But as your project gets bigger, this can create a lot of problems. Here's an example from one of our repositories at Demagi. And this is our base template in Django. So this is sort of the template that a lot of our other Django views, our other Django templates sort of inherit from. And you can see here, I don't know if you can see where my mouse is, but we have this pattern where we annotate the request object in Python to say which libraries we're using. So we say, like, are we using NDD3, which is a graphing library on this page? And if so, then include these four dependencies that NDD3 needs. Or are we using data tables, which is a library that sort of does sorting and search for data tables? Okay, well, then we need these three libraries. Or are we using type ahead? And so, you know, there are a couple of immediate problems with something like this. You know, first of all, you're loading a lot of scripts on your page, which is bad. Your dependencies are also sort of very far away from each other. Like this logic lives in some base template. The thing that sets the use NDD property on the request is probably in some Python view code somewhere. And then the logic that's actually using NDD3 is probably in a different JavaScript place altogether. And so, this is quite a common thing to happen to mature or more mature Python apps as they sort of take this ad hoc approach to to sort of JavaScript and JavaScript dependencies as they end up with a lot of this stuff sort of scattered around in different places. It's pretty hard to reason with. And so, I call this pattern server first. And it, you know, it's kind of you start with the web framework, with the sort of the Django world, with the Flask world. It's the most common one that Python developers choose. And I put choose in quotes because you kind of, you don't really choose this architecture.  And in this world, as you saw, usually the JavaScript is included ad hoc at the page level. Sometimes that's baked into your template hierarchy. Sometimes it's not. And yeah, like I said, it sort of gets more and more unwieldy over time. And another thing which we'll see later is you're not really taking advantage of what JavaScript can do today. So I kind of lovingly gave this the mascot of the spaghetti monster because, you know, not that your whole code is spaghetti, but your frontend code base kind of gets spread around all different places. And so it becomes a little bit spaghetti-like. So, right. So is there a better way to do this? And if you sort of start from, you know, 2020, I want to build my most modern, my best web application that I can, you'll probably end up finding something that recommends you do something like this. And so in this world, you basically, you create two separate, entirely separate projects. You have your sort of frontend project, and that might be its own entirely distinct code base. And then you have your backend project.  So these are often run by different processes. One might be running in Node, and one might be running in Python. They might be running on two different subdomains. And this is nice. Like, this has a lot of upside. It plainly separates your backend and your frontend. And that can be really good, especially if you have a team and you have a team of JavaScript people and a team of Python people, and nobody wants to sort of cross the chasm, then you get this really nice separation. Some of the downsides of this towards the bottom, like your backend basically becomes an API factory. And so, like in the Django world, you know, you're throwing away Django views by and large. You're throwing away all of the templating system. Similarly in the Flask, in the Flask world, you're not really using JINJA. Flask is just serving APIs. And for us, as Python developers, when you're doing development on the frontend, you lose that sort of familiarity of, oh, this is how I've been making websites for the last 10 years, and now you're asking me to do this entirely new, totally different thing, and I'm only allowed to write APIs. And so, the result of that makes simple stuff more difficult. It makes your deployment architecture a bit more complicated. And so, this isn't always ideal either. Certainly, for me, as like a single person doing my own sort of like full stack projects, this, I didn't want to sort of like take on all this weight when I thought, you know, why can't we just use these two things together? So this one, yeah, I didn't have as good a mask out for this one, so I call it the Energizer Buddy, and the analogy is that you're bringing your own batteries. Like you're throwing out the batteries that are provided by the Python framework, and you sort of have to bring all your own stuff to the table. You have to re-implement everything in this sort of like new API pattern. So this, I'm not going to read through all of this, but this is taken from the guide and sort of talks about the differences between these two. And yeah, I mean, basically, one is kind of usually started by server developers, one's usually started by JavaScript developers. They have sort of different properties around whether they use frameworks, how they manage the JavaScript tooling and all that. And they both have pros and cons, but I have found that neither has been sort of ideal for me. And so the architecture that I like, and the one that I use for most apps these days and that I recommend the most, is what I call a hybrid application. And in a hybrid application, you basically mix and match these two things. And so rather than saying, you know, my front end and my back end need to be completely decoupled or not taking any sort of structured approach to organizing your front end code, you sort of mix and match these two things at the page level. And what this allows you to do is take the power of modern JavaScript and there is good stuff in there. Combine it with the familiarity that you're used to with your Python web frameworks and develop applications that sort of meet both sides. A big downside of this is that you kind of have to dip your toes into JavaScript build tooling. And that is not always the most fun process. And so, yeah, so I want to tell just like a short story of my own experience adding React to a Django project. And so this would have been sort of like, right when I stepped down to Moggy, I'm like building my first side project. I hear that this thing React is like all the cool kids are using it. I should be using it. And so I'm like, okay, I'm going to like use React in this project. It's going to be great. And so I go to the React, you know, the tutorial and they have this sort of hello world code.  For those of you who don't know what it looks like, what is that import? Like how does that import work? And where does that like, can I even do that?  And you're like, what am I looking at? And if you put this code into a browser or into a JavaScript file and you try to run it, like it's not going to work. Like this isn't valid JavaScript code. And yet it's sort of front and center in the React hello world and like my head is like kind of exploding. But what I figured out pretty quickly is, oh, I need a tool chain. And so, yeah, so why tool chains and the short answer is so that we can do new good stuff with JavaScript and also support legacy browsers.  In the JavaScript world, you don't really have that option. Like your code needs to run on, you know, it needs to run on ideally, you know, seven or eight different browsers, you know, all these mobile phones and you have very little control of what particular version of JavaScript is going to run on any particular device that your code is running on. And so you have to be very defensive about it. And so the way that the JavaScript community has gotten around that is they have introduced tool chains that essentially allow you to write newer, better, easier to reason with JavaScript code and then they turn that code into something that browsers can actually deal with. So that's what the tool chain does. That's why you need it. It's so that you can do stuff like this and not have it crash on browsers when you open them. So, okay, so I need a tool chain. What tool chain should I use? And so the React documentation has some advice on this and, you know, my first reaction was kind of like, okay, this looks like a lot of options. But okay, I'm integrating with an existing code base. So I'll go check out this more flexible tool chain section. And so I go over there and I'm reading this and I'm thinking like, okay, neutrino combines the power of webpack with the simplicity of priest. And mix is a toolkit for full stack. And like, I don't know what, like, maybe this makes sense to you all or to somebody, but when I read this, I'm just like, what is all this stuff? And what are even these words and like, why do they all sound so funny? And yeah, it's funny. Like my first experience like getting into this this sort of like JavaScript world that I had never been a part of was like, it was very humbling and sort of like, it caused me to like have some kind of like, you know, am I like not like, I thought I was like a professional web developer. I thought I sort of like understood what was going on. And then I'm reading all these words that barely make sense to me. But it's not this complicated. And you don't really need to care about all these different options. If your only goal is to use modern JavaScript. I'm sure the JavaScript people have have very strong opinions about these various tools, but you don't need to if you're just sort of trying to get something done. And so, yeah, so these are the basic elements of a tool chain. And most of the tool chains will look something like this with possible replacements of these different specific tools. But essentially you have a compiler. You have a bundler and you have a package manager. And I'll quickly talk about each of those individually. So the package manager is the easiest one. And the one line answer is it's it's pit for JavaScript. So this is the thing that will where you'll put your request in into a file. It, you know, you'll give it versions. It manages your dependencies for you. It does your installations for you. So it's almost one to one with PIP. NPM does, you know, they both do other stuff, but you don't really need to worry about that. In the JavaScript world, there's two main packages managed package managers and people will argue about which ones to use. But NPM is sort of the most popular one. And it's the one that I recommend. And I'll say like, when I recommend these tools, it's not from the perspective of like, I know everything about JavaScript, and these are definitely the tools you should use, but these are the most popular ones. And you can't really go wrong if you use them. If you do want to sort of get really into this stuff, you can you can go read, you know, 100 articles about NPM and yarn and decide which one you want to use. But that wasn't something that I felt the need to do. Yeah, so that's the package manager. The next thing is the compiler and the compiler is the thing that lets you write that code like the H1 thing that we saw in the React example. So it'll take sort of new stuff that's been added both to JavaScript and extensions that, you know, other people have come up with like TypeScript or JSX, which I'll talk about in a little bit, and turn them into browser-friendly JavaScript. So that's the thing that's doing the work of translating the modern stuff into the stuff that your browsers can deal with. And Babel or Babel, I'm not sure how to pronounce it, is the most popular compiler out there and it's the one I sort of recommend using. And then the last thing is the bundler and the bundler does, it kind of does two things. One thing it does is it bundles your code, so it's pretty well named. And one thing that it does is it manages dependencies for you and that's part of the bundling process. So if you remember this example I showed where we had this sort of, you know, all these different libraries were being included based on this property that was manually set. If you just use those import statements in your JavaScript code, then your bundler will figure out that you need those libraries, it'll get them for you, it'll get the dependencies of those libraries, but it won't grab everything that's installed and it'll sort of figure out what it needs and then create a single bundle file. And so the other thing it does is, you know, you see on this page there's, you know, 20-some odd different files that might get included and this isn't even sort of a complete example, but it'll take all that stuff and just put it into one file. And so if you have it all in one file, that's fewer requests that your page has to make, which will make your site more performance. And again, there's a lot of bundlers out there, but Webpack is sort of the gold standard and the most popular one. So, yeah, so that was a lot of information quickly, but to put it all together, NPM is going to be our PIP, it's going to deal with all the libraries that we want to use. Babel will take our modern JavaScripts and turn it into browser-friendly JavaScripts and Webpack will sort of take all those things, bundle them together, create this one nice JavaScript file, and we can finally have a Hello World. So, yeah, so that's a lot of effort, but it is worth it and it's a one-time sort of exercise that you have to go through and in the guides, I have sort of very detailed instructions on how you can do all the stuff set it up in a Django project. In terms of putting it into a project, this is a Django example and so you have the whole pipeline there on the left-hand side and then all you really need is that bundle file. So then you just treat the bundle file as any other static file as you would an image or a CSS file and then you do your normal thing with views and templates and then you can use any of this modern JavaScript directly in a Django app or in a Flask app by only just sort of referencing this file and having this thing in place on the left to create it. Yeah, so in practice, this is one way you could structure that and so you'd have your sort of your modern JavaScript source files in a project folder. I called it assets, you can call it whatever you want and then you have some build tooling that takes those and outputs them into your normal static files directory and then everything works sort of the same way and this assets folder, it's never referenced or used by Django but it's used to build your front-end source and you could keep it outside of the project but I find that having it inside the project is nice because then you can sort of do everything at once and really they are sort of dependent on each other. And yeah, so this is what a single page React app then becomes in this sort of hybrid architecture that I mentioned so you have your modern React thing over here it goes through your pipeline and then it gets included in your Django template just as a bundle like this and you can see this like div ID root is in your template and then the React thing knows to go render itself in your root template. So yeah, hopefully that makes sense. I realized I sort of went very quickly through that but there is a much more comprehensive example of this in the guide but that's the basic things of it and then the rest is sort of how do you deal with auth and how do you deal with APIs and all of that good stuff. So why bother with all of this? At the beginning I kind of said it would be worth it and it is you do end up in a much better world in terms of your front-end code base and so what's the payoff? Some things, so you can use the latest JavaScript frameworks and they are quite nice. It's one of those things where it can be a steeper learning curve to start working with them but once you wrap your head around them and once you get comfortable in them and they increase your velocity the experience of building UIs in some of these frameworks is quite a bit nicer than sort of your standard document.getElementById.addEventListener or the jQuery version of that. You get the dependency management so you don't have to do any of that stuff yourself. All of your JavaScript dependencies can be managed in sort of this import-export fashion that I showed in the React example. You get new features and convenient syntaxes which I'll show a few and you get there's a ton of sort of customization that is not in just JavaScript but people who have their own opinions about how to make JavaScript better and you can leverage any of that stuff depending on what you want to use. Hopefully it kind of gets rid of your front-end spaghetti. One of the big things you get is ES6 which is just like the sixth version of ECMA script or something like that but anyway it's later versions of JavaScript and it's hilarious. Basically they just added a bunch of features to make JavaScript more like Python but they are useful. One of the things you get is arrow functions which are basically lambdas and while this looks kind of trivial in the same way that lambdas look kind of trivial like you just change the syntax of this function thing when you write a lot of single-line functions then these become really useful and I'll show you on the next slide why you end up writing a lot more single-line functions. That's a novel concept but yeah so ES6 adds classes to JavaScript the constructor is basically you're a knit function and these work how you would expect. They have something called template strings which are basically F strings so the syntax is similar to F strings except they add a little dollar sign here but you can essentially you can escape this name, variable and brackets and it'll render appropriately and like F strings you can put arbitrary JavaScript code in here like one line JavaScript code so you can do a lot of much more powerful string formatting than the traditional string thing that that we've been doing for so long and default argument values so also just sort of like something that's been in Python forever but yeah so you can have optional arguments and instead of being undefined which they would be in JavaScript they will get assigned whatever the default value is and there's a bunch more stuff as well these were just some of the highlights that I pulled out another thing so this is kind of a react thing so this is that H1 thing that I showed you a while back but essentially it's a language called JSX and it's kind of like string templating for HTML and it's funny at first and it takes some getting used to but it is really nice in that it provides a really easy way to sort of write code that looks like HTML but add business logic inside of it that can do complicated functions and so this would obviously render hello what is it, Harper Perez on your page and this is one place where where those arrow functions are useful if you want to do complicated bindings and other stuff in these templates then you end up using a lot of sort of one line functions View which is another popular JavaScript framework has a different take on this sort of a lot of these frameworks what they're trying to do is they're trying to make it easier to combine HTML with your styles and with your business logic and so View defines this format where the View file is broken into three parts there's a template which is kind of the HTML there's the script area which defines the business logic in here of what's actually going to happen with your data and then there's styles that get applied and one nice thing about this View example is these styles can be scoped which means that the style will only get applied to the Ps in this file so it's a nice way to avoid having clobbering your global styles for a particular component so again this is it becomes a nice way to build UIs in sort of a way that the whole UIs contain together rather than sort of being out in a bunch of different places and yeah and that's honestly that's really the tip of the iceberg I feel like I know maybe you know this top part of the iceberg as well but there's a ton going on in the JavaScript world these days modern JavaScript is actually not so bad and I encourage you to use it and bring it into your Python projects yeah thanks and so yeah like I said if you want to see sort of code samples and anything else you can go to saspegasus.com which is one of my side projects and then just click guides and you'll find like a super long write up on all of this stuff and if you want to find me and I'm CZU on pretty much everywhere but especially Twitter and the zatec Slack cool thank you very much Corey that has made oh that's quite a lot that's enough that's made JavaScript to an absolute novice like me at least recognizable and I see we have a bunch of questions and we have some time for questions I have one question which is any reason for not looking at angular uh no I think if I was going to put if I was going to put a third framework in that in that diagram it would have been angular I have the sense and this might be sort of the JavaScript influence on me but I have the sense that angular is sort of a little bit on the decline these days and react and view are sort of still on the rise but I'm aware that angular for a long time was the default especially project integration I know view was created by one of the lead developers of angular2 and so when the angular2 angular3 fork happened a lot of the people who didn't like where Google was taking angular3 hung around angular2 for a while and then jump shipped a view which which people say is sort of like like a better version of angular2 but but yeah that's that's my short answer I have used angular and I don't have anything too bad to say about it cool, next question any ideas for server side rendering of the dynamic JS code in addition to the Django template code yeah that's something that I don't know enough about actually so I'm going to admit my ignorance there I have the sense that if you get into that world you need to to be back in the Node.js world but I'm not I'm not too sure we've kind of reached the limits of my knowledge on server side rendering cool next question is there a better way of integrating with Django admin run server other than run this npm command in a separate shell yeah um yes and no there are libraries that attempts to solve that problem for you so I think there's something called like Django view loader for example that tries to dynamically sort of compile and put a view like a view pipeline into like directly into a Django template I found that the npm flow has been totally fine and as a personal preference I like using the bare metal tools because I find that often these libraries that have been written specifically for Django like they work really well as long as you don't have a use case that they haven't thought of and then the moment you sort of break out of that it they can be really hard to configure and you end up wishing that you had sort of just started with the bare bones tools that's my experience but I haven't tried a ton of other I've never felt the need to find a better way to do that it's good to know where things are dangerous I should say that it's easy to have you know the equivalent of like how run server auto reloads like it's easy to have that set up in your npm so you can watch for changes in your JavaScript files the experience is quite the same you're just running two processes instead of one but you don't have to re-run the npm command every time you change a JavaScript file yeah cool next question have you ever used or do you know about Dash if so do you have an opinion I have heard of it I have never used it and so I do not have an opinion cool another question hard one test of view components every time I touch it I miss pie test yeah you know my experience with view is somewhat limited I have the sense that that there is sort of a canonical answer to this and if you go into the view docs they have opinions about that but I don't off the top of my head know what the answer is front-end testing is another one of those things that is a big initial investments and I haven't finished to get over the hump on all of my projects but once you get it all set up then the experience of running front-end test is not so bad cool then is ES6 still full of foot guns if you pass more arguments to a function then it accepts I like the expression foot gun it's great yeah I know that they have sort of strict mode and I believe it is intended to catch a lot of those things also sort of like a lot of the common gotchas of JavaScript scoping variables properly and things like that so I think you can run your build pipeline in strict mode and it will catch a lot of those things for you I don't know specifically about that one and whether that's something you can sort of set a rule for cool and one last one I think which is Redux have used it and is it worth using I have dabbled in it not on my own projects but for other projects I think it can be worth using for a big complicated react project my sense is it's just a giant global state dictionary and so for people who know react one of the annoying things is you kind of have to pass state around and push it up and down between parents and child components and I think Redux sort of says no this application has this global state and everything can access to it and so if your workflow so if that sounds like it would be useful for your workflow then I imagine it's worth looking into for small applications I haven't had the need for it cool I think we've some people typing I don't know if there are any more questions oh yeah no thank you very much Cori it's been very enlightening yes I believe we now have a short break before the lightning talks which will be in room 1 so Cori thanks again thank you everyone for listening see you all at the lightning talks thanks everybody


Democratic Senator Al Franken has issued a message of explanation and apology following accusations of inappropriate touching from four women. Franken did not admit to the inappropriate touching, but says that he is sorry he made some of the women feel badly. He faces a Senate ethics investigation for improper conduct, but promised to regain his constituents trust. The message also suggests no recognition was being contemplated. The senator has not appeared in public since the first allegation and canceled an event in Atlanta for his book Al Franken, Master of the Senate. If you've enjoyed this segment of Lakeland News, please consider making a tax-deductible contribution to Lakeland Public Television.