Well this is Team Liquid right after they won over 10 million dollars at the international Dota 2 tournament grand finals. Gaming went from a hobby to a legitimate career. As you can see from the top gamers there are those who are making more than most people with a college degree for video games. Prize money is a great source of income but with the growing popularity of Twitch gamers have the opportunity to get paid while streaming their favorite games. Summit 1G gets massive donations while playing. Fallen is not only on one of the top teams and makes a ton of money from tournaments but he also makes money streaming and he has various brand deals. Then you got guys like Dr Disrespect. He's not only a good gamer but he's grown based on the character that he plays on camera. But this isn't a success story. This is a story about how addiction destroyed my professional gaming career. What's up everybody this is Chris from the Rewired Soul where we talk about the problem but focus on the solution. And this is a story that I don't share too often even when I share my story of addiction and recovery. I just kind of leave it out and I don't know why because gaming is kind of a big deal these days. So kick back relax. This video is going to be a little bit longer but I want to explain to you how I actually had a professional gaming career and my addiction completely destroyed it. So the first thing I want to do when I start off this video I'm going to talk about some people that I hurt and harmed and things like that. And if any of them are watching some of them I still have on Facebook and if you happen to stumble across this in any way I want you to know that I'm truly sorry.  All right. And I do apologize but I have you know grown some of these relationships back and things like that. But for anybody else who I hurt in the past I am truly sorry. All right. So as some of you know who follow my channel you know that I am a drug addict and alcoholic in recovery. And something I want to point out as you see how this story goes my addiction for me personally the way my addiction manifests it is almost 1000% based on my pride and based on my ego and you will see how that played its role in me destroying my professional gaming career. My addiction was only a symptom of the issue but my pride and my ego is what led me to drink and use more drugs. All right. So I want you to remember that as we go along. So anyways since a young age young young age I was born in 1985 the year that Nintendo came out I was probably four or five years old when I got my first Nintendo gaming system and I was hooked on video games ever since. You know I grew up playing Nintendo then I switched over to Sega then I got myself a PlayStation and just onward and upward. It was around high school when I really got into PC gaming. I got my first computer I was hanging out with a friend and he was like yo let's check out this game. I think it was Starcraft the first Starcraft and I sucked but I loved it I loved it and we played the original Warcraft. Something about me I'm very competitive like not in a in a crazy way it used to be in a crazy way but not anymore but I'm very competitive and you know in high school I was triathlete I did football wrestling and track but gaming was another way for me to be competitive and a lot of this played into being the child of an alcoholic mom and not feeling like I got attention not feeling that I was good enough like competition gave me a way to prove to myself and to prove to other people that I was actually good at something whether it was real life sports or whether it was e-sports so I remember having my friends come over bringing over their play stations and you had to use that link cable and two separate TVs like this is like pre-high speed internet ladies and gentlemen all you kids out there and that's what we did I remember playing the first or second Warcraft on 56k dial up with my friends right but with broadband internet coming out and my friend introducing me to some games on the computer I ended up getting a computer and my dad made a deal with me he said we can get high speed internet if I joined the wrestling team if I just tried it right and that's how I joined the wrestling team and I was like no that's lame you gotta wear like these tights and you gotta wrestle around with dudes but I was a natural and I actually excelled like crazy in wrestling we ended up going to the state championships I ended up getting a nice little ring which I lost in my addiction oh well but anyways throughout that time I was a hardcore gamer um the first first person shooter that I really got into was quake 3 loved it loved it I could play that all day long and what's crazy is is that you know with all of my anxiety and depression that I struggled with throughout high school gaming was actually the reason why I didn't start drinking until the very end of my high school career I remember every Friday night we had our varsity football games and we'd play and then everybody would go out and party and they'd invite me and my buddy um and we'd be like no no thanks and we would just go and play video games this was when land centers were on the rise um gaming cafes if you will and we would just go hang out there and we'd play and then I was introduced to my first addiction which was a game called counter strike boy did I fall in love with that game like I think it's also important for people with addictions to realize that we were often addicts long before drugs and alcohol came into play and what I mean by that is when I got hooked on counter strike I had an obsession I couldn't stop thinking about it I would stay up until two or three in the morning playing me and my buddy would ditch class to go home and play counter strike like we were obsessed with this game but anyways my junior and senior year as I'm playing counter strike um and I was really into the competitive aspect one of the land centers here it had a local league and we were we were one of the best teams in Vegas we were always within the top three me and my friends and I was just I love the competition of it and around that time we started watching um international tournaments that tournament to watch back in the day and some of you old schoolers you know what I'm talking about it was called CPL it was like call I think it stood for the cyber athlete professional league and every year they would have two tournaments uh in Dallas one in the summer one in the winter and then other tournaments started to spawn in other countries and things like that and what we used to do back in the day me and my buddies would all go over to my friend's house he was freaking rich and we'd all bring our computers over and we'd stay up all night just watching these tournaments like whether they were here in the states or they were in other countries and I will never forget I'll never forget I remember watching one of these tournaments in another country and I was like man I would love to travel the world see the world do something that people don't even get a chance to do right I would love to do that for video games and another thing about us addicts and alcoholics is that when we set our mind on something like we go get it unfortunately that's typically with drugs and alcohol but anyways I locked in on that I was like I want to do that so right after high school I ended up going to a small tiny tiny college in northern California and there was a website called got frag and there were a website covering all of the major counter strike tournaments they were doing feature articles and things like that and I kind of realized like I humbled myself and I was like okay Chris you're never going to become a professional gamer but I was always known as one of the smartest guys in the game so I wanted to sign up and start writing for free for this place this website called got frag I wanted to do that and work my way up the ranks and become known and go to tournaments you know because I figured I couldn't make it as a player so and it's an interesting story too so I ended up wheezing my way in because I used to make counter strike movies and they needed people to who are video editors and I'm like yeah sure sign me up so I did that and I was I'm one of those guys I still am where if something needs to be done I volunteer I just want to do it I just want to do it I like work I like working hard I like impressing bosses you know and all that stuff so they ended up needing graphic design done so I started doing that even though my stuff sucked but I was really in a photo shop back in the day so I made some stuff well anyways CPL had a league an online league called Cal okay cyber athlete amateur league I think it was and every week they would do predictions okay and whenever they did predictions I remember watching and reading these articles and the guy who did predictions sucked right like he was just he was just really half-assing it okay and I was looking at him like man I could do such a better job and I was always asking like can I write something can I do something can I do some predictions because I like really watch these teams like while some people like are really into like football or hockey or baseball and they know every single player and they know how this team operates and how that team operates and how the matchup is going to be like that's how I was with Counter Strike well lo and behold one day this dude's computer got a virus and he could not do the predictions and we were talking back in my RC chat and they're like we need somebody to do the predictions and I'm like pick me pick me so I ended up doing the predictions that week and everybody who read my predictions loved it they absolutely loved it and they're like this guy needs to do more of them and by the way my gaming name is boot man so you might hear that throughout this video so everybody's like this guy needs to do them from now on right so what they started to do they started letting me and the other guy do predictions together eventually that guy just left I kept doing predictions but now I had my foot in the door and I wanted to do more I wanted to write about my thoughts about Counter Strike strategy and different players and player moves and you know player trades and gossip in the community I just wanted to do more and get really involved and I started doing it and it it exploded with this one thing so the guy I looked up to and he's one of the guys if he watches this I would like to apologize um Trevor Midway Schmidt so if any of your old school gamers like he he's still in the in the scene but he's more in the background but he was the dude he went from being a pro gamer to running Godfrag he was one of the the first guy one of the main guys who started Godfrag and he was he was like a mentor a big brother to me helped me out a lot but anyways he did an article around big tournaments called Midway's playbook and I loved him I loved what he did but something that I do I'm I'm always thinking outside of the box that's why you see a bunch of different content on my channel I'm always trying to think outside of the box and I was looking at what Midway was doing and I absolutely loved it and I was like you know what I think we could do more with this I think we could do more with this I in my brain I always related Counter Strike to football right it's very similar football you do a play you stop you regroup you come back same thing with Counter Strike you play a you play around you stop you regroup you come back right and I was like okay well if it's kind of like football then maybe we can start analyzing the offense and defense maybe we can start predicting what the other teams are doing so I talked them into letting me do a guest playbook and Trevor's articles Midway's articles his playbooks they were about a page or two pages long they were great they were great articles right but I ended up taking about man I don't know like eight eight hours 12 hours and I did this extremely in-depth playbook there was a team that was on the rise at the time called NOA it was the first time that international players and North American players merged together and made a team so NOA stood for you know it was like North America as well as I forget but anyways they were like they were from the Nordic countries so like like Norway and Sweden and stuff like that but anyways they were on the rise and then that was my first playbook I did this really in-depth one and I've really focused on the defense and back in the day so any of you CS go players and I think you can still kind of shoot through walls in CS go but back in the day in CS 1.6 you can straight up shoot through a wall like it was paper so what I did was I was watching demos of these teams and just watching and I would find each of the players favorite spots on NOA and I released this massive playbook this massive playbook all right and because I did that Godfrag actually flew me out to Dallas to the CPL and it was right after I launched this playbook and something insane happened you just saw that teams were destroying NOA there were shooting these guys straight through walls because my playbooks were on point they knew exactly where these people were going to be and I remember because I was kind of friends with some of the guys on NOA and they were like upset but like in a joking way like it was and I was like oh my god like I really hit something and that's when I exploded that's when I became a big deal people were like bootman's playbooks bootman's playbooks bootman's playbooks and I started writing a lot more writing a lot more just so many more things and I was just hooked on that I was so I was working a regular nine to five job and I would come home and just write and write and write like this was going to be my ticket and I kept doing that and eventually Godfrag flew me out to Sweden to go to something called the Nileva land so I was about 19 years old I think and I just got a 100% paid for a trip to another country and it was a dream come true and right about this time okay my drinking wasn't terrible okay I started off with just alcohol no drugs at all and it wasn't terrible but I liked a party I loved a party I had that kind of frat guy mentality even though I wasn't in a fraternity so you know that international flight I got to drink I got to drink when I went there it was still somewhat under control what ended up happening was there was a team called team 3d okay and team 3d came to me and they said listen we love your playbooks we need some help because 3d used to be the top north american team they just used to be this rivalry between north america and sweden and they're like look we want to hire you to make us like personal playbooks for the other teams and they were going to wcg in san francisco I forget what year it is it might have been 2006 and they said we want to pay you to do it I think they wanted to pay me like 500 bucks and I went to my bosses at goth bag I'm like yo can I do this and they ended up letting me do it and I was like okay so so I did this really in-depth playbook it was kind of hard because there's so many teams at that tournament and you don't know who they're gonna play so I think I did like the top teams and my roommate one of my best friends in the world his name is weenus so he he kind of uh he started growing as a name in godfrag 2 I hooked him up with a writing gig and he got bigger and bigger too but weenus back in the day he used to work at office max so I had him print out this playbook like these used to just be online and they printed it out put the little spiral thing like I was being all professional and I ended up going to wcg in san francisco and I gave 3d this playbook and for the first time the first time in I think a year or two and in gaming time that's a long time for north america to win a championship team 3d ended up winning the world championship they took down sk who was the top swedish team at the time that people thought were invincible and now I'm sitting there like oh my god like I can actually like help teams like in a new way now now I know like it was it was very I don't even know the words to explain it was it was amazing seeing that what my work can do what this effort I was putting in can do and at that time by the way back then back in my day there was no coaches there was no coaches in the scene now I'm going to let you in on a secret if you're still in here with this story I ended up becoming the first e-sports coach in the world all right and some of you are going to say no you weren't what about that guy vesselin and you know these other people back then a lot of people were getting hired and getting the name coach right but they were basically just somebody they were like a hype man they would stand behind the team and just hype them up and say come on yeah let's do it right that's what they would do they weren't they weren't actually coaching so I made one of the hardest decisions I had to make in my life which was leaving Godfrey and becoming the coach of team 3d but I wanted to do it I wanted to be the first coach I wanted my name to be somewhere and I think maybe my ego is playing a little part in the reason why I'm making this video nobody talks about me and maybe it's because of the relationships I destroyed so I accept that I accept that and I move forward but nobody talks about how bootman was the first real coach in e-sports now when you see this professional gaming tournaments across all the different games you see that all of them have coaches right and legitimate coaches so team 3d hired me my drinking was escalating a bit but let me dial back a little bit back before I left Godfrag this is when my ego really started to take a turn for the worse and this is when alcoholism was actually starting to cause a problem when I was with Godfrag and we were in Dallas so keep in mind this is what I was 1920 years old I was not of age to drink and I would sneak into parties I would find alcohol I would have other people you know buy me alcohol and it was kind of normal like all of us were like right around that age 1920 like if you were 21 you were already like a geezer so there was a lot of underage drinking back in the day and what ended up happening was I ended up going to this party with an open bar and just getting completely plastered and we went over to one of the team's rooms I forgot what team it was but back in the day there was a girl one of the players girlfriends and her whole shtick back then was to talk about gaming gossip and we went into that room I didn't even notice she was in there she was wearing a wig it was weird and she ended up recording me coming in there drunk and she caught me on camera saying well look at me I'm 18 and I'm drunk or however old I was and she had that on film and Godfrag came came to my aid and they they ended up getting her to not release that get rid of it and sweep it under the rug and I hope I'm not like making Godfrag look bad but anyways like it was it was it was a bad situation all around but I put myself in danger my career in danger at that point but anyways I started having a lot of problems with my bosses like these guys like I had absolutely no humility at all no humility as I was rising and I was becoming a big deal you know I my brain was telling me like Godfrag would be nothing without me you wouldn't get you wouldn't get the traffic without me you wouldn't get the sponsors without me you wouldn't get the ads without me nobody would come to this crap hole website if it wasn't for me the boot man right and I would say this to the bosses I used to have insane anger issues so when I was like just like this big whiny baby and like whenever I didn't get my way I would just throw this tantrum and I would fight with them and you know one of the heads of Godfrag he used to talk to me for hours and talk me off these cliffs when I wanted to quit because nobody respected me and just all this stuff and to be honest that was one of the reasons I ended up taking the job with 3d and it was completely based on my pride and ego and when I started working with 3d cpl started something the cpl world tour and basically they were popping up every every month or every other month they were popping up in different countries and having these tournaments and team 3d kept getting invited to them so at this time I'm getting flown all over the country I used to go to New York once a month to be with the team we would all fly out there and then right before we went to Spain so I got to go to first I went to Sweden then I went to Barcelona Spain and we went there but first we met up in I think it was Virginia and we did like this boot camp so as a coach while they were practicing and doing scrimmages online and stuff like I was over there analyzing teams making play books and things like that so we end up going to Spain to the world tour and we got demolished this is back when team complexity who was another North American team great great guys a lot of them were good friends here's actually a picture of me with one of the guys who was on the old complexity team trip and then as well as my buddy Josh Dominator Severs and so we went out there we ended up getting destroyed but when I would go out of the country like my drinking would just go insane like the entire time on the plane I was getting plastered because as soon as I would hit international waters now it was time for me to drink and I would just get wasted on the flight and when we got to Spain I immediately hit the bar and this is one of those things like I would go to another country and I would spend more time drinking than actually like exploring and sightseeing and stuff like that most of the nights while we are in Spain I was just you know we would leave the tournament and I would just go find a bottle I would go buy some booze and just get blackout drunk in my hotel room but like to me it was like oh we're just partying because we're out of the country but like while my my teammates the guys on my team and other gamers they were just like kind of relaxed and chilling having some drinks like I was just like I want to get blackout drunk you know and after that we ended up going to another WCG event which was in Paris France so now I get to go to Paris France and this is a story that I look back on and I'm just like man like if that's not somebody who's addicted to alcohol I don't know who is so we went to France and again just buying all of the booze I can and I remember I remember people kept going like when it wasn't time for the tournament they would go to the Eiffel Tower and see these amazing places in Paris France and I remember thinking this thought I remember wanting to drink instead I wanted to just get wasted when we had free time I just wanted to get blackout wasted and my brain told me I said don't worry Chris you can see the Eiffel Tower the next time in your you're in Paris like what what like spoiler alert it's been what is it 2018 it's been over a decade now I still haven't been back to Paris so that's to show you where my priorities were rather than going to see the Eiffel Tower I decided to get wasted instead right and fortunate enough for me the tournament was actually inside the Louvre which is a famous museum in case you didn't know and so I got to see that just by going to the tournament but fun fact about that tournament we were the first team to tie every single one of our group stages stage matches like in in the history at that point I don't know if it's happened again but yeah anyways here's here's another picture of me we were doing a kind of like a aftermatch press conference um with the media like back then like people were having me sign autographs and um here's here's a screenshot and you can't see it but we were sponsored by Nvidia and I was on this like this was just building my ego and building my ego like when when random people are coming up to you and having you sign stuff and you're getting put on boxes and I remember signing posters for giveaways we were doing and stuff like my ego was just out of control and the problem was too is that coaching them became difficult it was difficult for me to coach these guys when they're like these big deals like they're the famous ones like we're talking about guys and these might be names you don't remember but all the old schoolers do we're talking about like k sharp rambo bombs moto right these were big deals and they wouldn't listen to me and I didn't know how to keep them in check you know what I mean and there ended up being some uh some shake ups with our roster around that time 3d went through quite a few shake ups but anyways what ended up happening was we actually recruited two guys from that team in a way that I originally play booked and these were two friends of mine right Mikey so and Griffin banger also known as method and shag wire okay and this is when it took a turn for the worst and my ego got out of control and I was drinking and one thing about drinking is it makes you depressed when you're when you become an alcoholic and you become completely delusional and I just started butting heads with these guys and it's really sad too so Mikey Griffin if you're watching this again I apologize like here's a here's a picture of me and Griffin like Griffin was like one of my favorite dudes in the world I still love that guy like for those of you who don't know like he was shag wire back in the day but now he's Griffin the professional poker player like he actually made it to the final table at the World Series of poker was it last year or two years ago but anyways here's a clip of him at the final table and he's like a big deal in the poker world like I I have much respect for this dude like he's just one of those guys where you know when he finds something like he gets really into it so I'm glad that he's still doing great but anyways I ended up leaving the team just leaving the team and then I went back to Godfrag with my tails between my legs begging them to take me back and I even cut my deal I said listen if you guys take me back you don't have to fly me anywhere I just want to basically I just want to still be relevant just let me write again and da da da da right and man it took maybe a couple months for my ego to just go crazy out of control again and this is right around the time when Godfrag was just getting huge they gave me a second chance and I blew it and my drinking was just off the rails at that point I'm talking every night blackout drunk hungover still drunk the next day terrible I could barely even write like I don't know what I was even doing back then but anyways I was yelling at them how come you don't fly me anywhere I'm always comparing myself to the other staff members and stuff like that and I ended up quitting and that was that was pretty much the end of it and you know it was one of the biggest regrets when I first got clean and not even when I first got clean man like during my act of addiction like it's one of the things that fueled my addiction I was so depressed I hated myself for what I did I hated myself because I fell out of the scene and not long after that Godfrag got bought out by MLG for millions of dollars millions of dollars like millions of dollars and I didn't see a penny of it okay um looking back I don't know if I would have I wasn't like a stakeholder or anything but the guys at Godfrag were amazing and I'm sure they would have hooked me up or helped me out but you know I was on this path to making this what I do with my life just being involved in video games like being involved with video games would have been part of my life but instead I chose to just keep drinking and drinking and drinking and drinking and I just fell out of the scene and meanwhile my buddy Weenus he ended up doing great things he helped him out I helped Godfrag out with a magazine they launched real quick he ended up getting a job with Team EG back in the day he also became a big deal at CGS so back oh man this was about 10 years ago direct TV started a league called CGS and they sent everybody out to Los Angeles well in the Los Angeles area and the players lived there and it was a weekly televised thing there was Counter Strike there was FIFA there was Dead or Alive and there was a Forza I think it was right and Bobby ended up getting me a job with them I ended up writing for one of the teams called the Las Vegas Venom and at that time I was unemployed my drinking was insane and I got to go out there for a little while and I remember just begging people to buy me alcohol like man like that's not a good look y'all like I was begging the players I was begging my boss Alex Conroy also known as Jax who was a big deal back in the gaming days and stuff like that so Alex if you're watching this like I remember one night the my paycheck was like late and I remember begging Alex because me and him we were staying in the same apartment I was begging him for booze money begging him like how pathetic but that's what that's what us alcoholics and drug addicts do and like it was just terrible and anyways I ended up you know walking away from that not long after it like shut down anyways out of nowhere but you know I would beat myself up in my in my addiction as well as my early recovery because I sit back and I still love I still love gaming I still love gaming so much and I sit back and I would watch it and all these guys all these guys were just going somewhere they were going somewhere they were making tens of thousands of dollars if not millions of dollars guys I used to hang out with and be friends with and I'm just sitting there it's like that you know it's like that uh that that football player like I could have been somebody I could have been something like that was me when it came to gaming and it fueled my depression and my self pity and things like that and I just I couldn't believe what I did but anyways throughout my recovery I found this new purpose I found this new purpose of one first and foremost just being a father to my kid but also helping other people recover from addiction and that's one of the reasons why I'm sharing this story with you um we're taught to share our experience strength and hope what what happened and how I got through it and where I'm at now and you know I'm I'm glad that you know so many of the guys that I used to be friends with who are succeeding in esports and you know they're able to support their families like back then like none of us had kids none of like none of that stuff and like now we got families and you know my buddies are getting married and things like that and I'm glad that gaming is something that they're still doing that completely supports them I'm no longer a hater I'm no longer sitting around miserable like I'm like awesome and you know in my recovery in the past two or three years I've actually had a chance to run into them quite a few times um we went to the Intel Extreme Masters tournament up in San Jose a couple years ago bumped into a bunch of old friends and talked to them and things like that um last year I've always wanted to go to Seattle so I actually got to go to Ti6 amazing experience I'm a big Dota 2 nerd and player and I still play a lot of video games by the way but I got to go there with my friends and it was it was an amazing experience it just gives me ramped up about esports again over the past couple years I've dipped my toe back into the esports thing a little bit but I finally realized that this what I'm doing right now with you is just this is my true passion this is my new passion and this is what I love doing now I I found every time that I tried to get back into esports because I still I didn't burn every single bridge and I still had some opportunities and I I'm pretty sure even if I just shut down the rewired soul right now like I can work my butt off and get back into it but this helping people like you with your mental health addiction recovery whatever the case may be like that is my true passion now but one of the things that I get to do now is that I get to do gaming with my son I get to play with him I get to tell him these stories I get to be the parent who encourages him like do what you love like we live in an amazing time that's something that that helps me get out of depression by the way it's just knowing that like we this isn't something you could do 50 60 years ago and not just for gaming if for some reason you're still with me watching this this isn't just for gaming like you can literally like anything that you're passionate about you can turn it into a career you can turn it into something that pays the bills and I like being able to teach that to my son and say look dude if you love gaming like just get good at it you have to have the workout ethic you have to practice you have to do the deal and this can become a career but if he doesn't want to he also wants to be a marine biologist but hey maybe he'll be the first professional gamer marine biologist but yeah I've been able to take him to some gaming tournaments since we live in Las Vegas I've been able to take him to some tournaments we went to a Heroes of the Storm tournament we went to the Evo tournament which is console fighting games he didn't come with me to the most one of the most recent ones but DreamHack came to Las Vegas I got to go there again I got to see some of my old friends I also ran into my buddy Hedon you don't believe that I knew Hedon well check this picture out but anyways Hedon he used to be on SK big deal but yeah I still stay in touch with some of the people but now I'm a more casual gamer I'm not a crazy competitive one sometimes my competitiveness comes out when me and my son are playing but I try to I try to turn it down a bit you know what I mean my girlfriend calls me out on it all the time but it's cool it's something that I get to do now and have fun and do with my son I still stay involved I'm still kind of watching in the background seeing where esports is going CSGO is a thing I play I played it for I go off and on on you know CSGO I don't like it I'm a 1.6 guy and one of the reasons I don't like it let's be real I suck at it you know but you know all of my friends I still have a bunch of people in Las Vegas a lot of my friends who I grew up with we're all still 30 plus year old gaming nerds and we play together I play Dota 2 with them we've played Overwatch and things like that but one of the best things that I've done is is that you know start a YouTube channel with my son by the way if any of you want to check it out I'll link to it in the end screen as well as in the info card me and my son started a channel called dilly and dad and we do gaming videos on there and I love playing video games with him and he hasn't gotten to the competitive aspect of it but he will now but if he wants to but anyways like I hope you I hope you enjoyed this story you might be new to my channel if you are welcome but yeah if you like this video do me a favor give this thing a big thumbs up and do me another favor go tell that guy Thorin that he needs to do a video about the first ever esports coach in the world I'm just kidding that's my ego talking again but anyways I'm glad you stuck around this long thanks so much for watching and you know what here's what we're gonna do here's what we're gonna do if you happen to watch this video if you want to learn more about addiction I work at a drug and alcohol treatment center now I have a website where I put up one of the courses where I teach about the disease of addiction and how it actually works and if you watch this video you made it this far go over to www.therewiredsoul.com go to the science of the addiction course and it's usually at $100 use coupon code it's free it's F R E E I'll have it right here so if you want to learn more about addiction there's your free code go check it out but anyways again thank you so much for watching please don't do what I did if you're a kid watching this video and you aspire to be a gamer like keep your eye on the prize yo because you can do it you can develop a career in this thing you can take this thing places all right so if you're new here and you haven't yet hit this little round subscribe button because my channel I'm making all sorts of videos about addiction recovery I'm also making a ton of videos about how to help you without anxiety depression and other forms of mental illness you want to check out some other videos or subscribe to me and my son's channel click or tap on the subscribe button or the thumbnail right below it all right but again this is Chris from The Rewired Soul I'll see you next time


Greetings from ITU Headquarters in Geneva, where I'm very pleased to be joined by Alexander Truskovsky, the Product Manager for ISARA Corporation. Today we're going to discuss X509, the digital certificates that are of wide use in the public key infrastructure, and in particular the latest revision of this standard. Alexander, thank you for joining us. Thank you. Could you tell us a little bit more about this revision of X509? I understand it is particularly to guard against the quantum threat. That's right. As quantum computing evolves, we have to think about migrating our systems to quantum safe cryptography. Now, today's organizations rely on complex infrastructures to support their information and communication technology needs. These infrastructures are very costly and time-consuming to migrate. With our X509 contribution, we are reducing this migration cost and complexity. We're doing it by making X509 certificate more crypto agile. The updated certificate is able to support classic algorithm and quantum safe algorithm at the same time, allowing for both legacy and upgraded systems to coexist, allowing for much smoother and easier migration in phases. Emerging crypto agility is a very interesting concept of preparing for a threat that is not yet to emerge in full force and it will evolve rapidly. Leaving the agility to adapt to changing threats, how is that baked into a standard? When we think about migrating various parts of our systems, some of them are built in such a way that those systems can negotiate cryptographic algorithms and making migrating parts of it first and then other parts later a little bit easier. Now, the way X509 is designed, it's designed around a single crypto algorithm.  Now, that's not very practical. Again, with the X509 certificate, what we've done is we've actually added this crypto agility which was lacking in it before, which was not needed until now. X509 has been around for 30 years. Will we see another 30 years of X509? I certainly hope so. It's been serving us for 30 years. It's the most widely used certificate standard in the world and I hope it will continue serving us for another 30 years. Thank you very much, Alexander. Thank you.


With thoughtful planning and clear explanation to participants, Moodle's workshop activity can provide a very powerful peer assessment tool. Participants may assess each other anonymously, they can practice with examples to review, they may have a chance to evaluate their own work and the peer reviews can be random or teacher-defined. In case of any conflicts, the teacher can retain overall control. In this workshop activity, taken from the Learn Moodle Basics MOOC, participants must submit information about their home region and then evaluate the submissions of other participants, according to set criteria. You can see that the workshop has four different phases and then it is closed. Let's explore these one at a time, from the teacher and student point of view. Setup phase, teacher view. Our teacher adds a workshop to his course, by turning on the editing, clicking Add an activity or resource and selecting workshop. He then gives it a name and description which can be displayed on the course page by ticking the box. Other settings can be expanded by clicking their links. Grading settings. Here you can decide how you want the submissions to be graded. There are four standard methods and clicking the help icon gives more information. We'll use the simple number of errors which is good for a basic workshop. Note workshops have two grades, the grade students get from submitting and the grade they get for the quality of their assessment and as a teacher you can change the ratio here and also set pass grades. Submission settings. Here is where teachers add the instructions and decide how many, if any, files may be uploaded and the types and size of these files. You can also decide to allow submissions after the deadline if this is important to you. Assessment settings. Give basic instructions for the peer assessment here. Tick the box if you want students to have a chance to assess their own work. This is not a certainty, it just means their submissions will be included during allocation. Feedback. Teachers can choose to add an overall conclusion and or file attachments at the end of the workshop activity. Example submissions can be useful, especially if your students are new to a workshop and need practice assessing. You can add examples of good and less good work for students to review and decide how and when you want these example submissions to appear. Availability allows you to set opening and closing times for the submissions and assessments. You can also choose to start the assessment phase, that is the time when students are peer reviewing, automatically at the end of the submission phase. We'll look into that shortly. Other settings are similar to other Moodle activities, but it's worth knowing that in activity completion students need to have only one of the two grades to complete the activity. Clicking save and display shows two items are done, but there are still two tasks remaining. One is to edit the assessment form. This workshop is using a simple number of errors, so we can write a short phrase explaining what the student must look for and choose our word for wrong or correct. Some items can have more weight than others, if desired. While the teacher is preparing the workshop, here's what our student sees. She can't access the workshop until the teacher switches to the next phase, so make sure as a teacher you remember to do this. Submission phase, teacher view. When our teacher switches to the submission phase, students will then be able to submit their work. We check the green arrows to ensure all our tasks are done and see that we must allocate the submissions to the assessors. We'll do this shortly. Submission phase, student view. Now is the time for students to submit work. In our workshop, based on the Learn Moodle Basics MOOC, they must write three sentences about their home area, add a link to a relevant website, and upload an image. And then wait until the next phase is available. Assessment phase, teacher view. During the assessment phase, students will review each other's submissions, but before they can do this, our teacher must decide how the submissions will be allocated. Manual allocation means we decide who assesses whose submission, which is fine if it's a small class or you know your students well and want to control certain allocations. We can use the dropdowns to choose the reviewers and reviewees. Random allocation is useful if you have large classes or don't want to be personally involved in the selections. You can choose either a number per submission or a number per reviewer. We can also allow students to assess without having submitted anything. As only one grade is required for activity completion, this at least would allow them to complete the activity. Scheduled allocation means that as soon as the deadline for submissions has passed, the workshop will send out the submissions to be assessed. Again, there are settings to choose from for the submission allocations. Now it's time to move to the assessment phase and this is where the peer assessment becomes really valuable because the students are doing the work and our teacher can simply monitor the process. Assessment phase, student view. Note, if you want to make assessing or reviewing anonymous, read the workshop FAQ for instructions on which permissions to change to do this. With the assessment phase open, our student clicks into the workshop and must then scroll down and click to open and view her allocated submissions. Now she sees the assessment form set up by the teacher before. Note, it is essential the assessment criteria are easy to understand and unambiguous. Much of the success of the workshop activity depends on students' understanding of the peer assessment criteria and their ability to correctly implement them. This grading strategy is number of errors. Moodle's documentation on workshop gives information about the other methods. Grading evaluation phase, teacher view. Here's where teachers check the grades. The assessment grade is calculated by comparison with the best assessment, which means the grade for assessment is determined by comparing the grade a student gave for each submission with the grade other participants gave. If everyone agrees and gives exactly the same grades, then everyone gets an assessment grade of 100%. If not everyone agrees, the amount that they disagree is reflected in a lower grade for the assessment. And this comparison can range from very strict to very lax. If you're not sure, leave it as the default, fair. Here too, after the calculation, is where our teacher is able to edit any grades if needed. Perhaps one student was over-generous or too unkind. The overridden grades appear in a different colour. During this phase also, we can publish, that's make visible, selected submissions at the end of the workshop. These could be good examples or poor examples, but are useful for students to peruse. And submissions can be published by clicking into them and ticking the publish submission box. Grading evaluation phase, student view. During this time, which can be a few minutes or a few days, depending on our teacher's workload and the number of students, students are prompted to be patient and come back later. Close, teacher view. When the workshop is closed, the two grades will appear in the grade book. And if activity completion is used, the activity will be marked complete. Close, student view. Here, our student can see any conclusion that was added, she can check how others assessed her, and she can view any published submissions. To summarise, workshop is an advanced peer review activity which empowers learners.


I welcome you to this session on large virtual address support 52 in arm 64 colonel. So we are going to talk about the relevant implementation details and discuss some pain points. So, hi, I'm a patient. I currently work with Leonardo. I hope you are taking good care of yourself during the pandemic.   So I did a similar talk on the same topic in Alexcon Australia a month back also virtually and this is actually an update on that on the same talk. Basically, I tried to gather all the feedback that the people had to share there and then I just incorporated a few changes in the talk accordingly. You can find open source article I have written for the open source magazine on this topic also. So probably that will also provide you some more details. So in this talk, I'll try to talk mainly, you know, in terms of the large address support on arm 64. I'll try to, you know, demystify a few details. So let's open up the mystery box a little bit by bit. So first, you know, a bit about myself. So I work currently with the narrow as part of the landing team. So this is my snack from the last in person conference I attended in 2019, you know, when you could travel freely. Yeah, so missing those days, right? So we need to do this and let us go and trust me, I contribute to, you know, several upstream open source projects like Linux, if I have you put both orders. Recently, I've also started contributing to user space utilities like exit tools, make them file. I also committed the crash utility tool upstream that's the user space to. So, all right, so let's see what we are going to talk about today, right? First, we are going to talk about the large virtual address support for what and the house so the basics. Then we are going to discuss a bit about the existing kernel memory layout on arm 64. Thereafter, we will discuss about flipping the arm 64 kernel memory map. So for accommodating the increase memory range. So I'm going to talk about what happens with this flipping in detail. Then we will talk about something very important, you know, what happens to user space. So what happens mainly to the existing user space applications which expect pointers, let's say, from the existing 48 bit address range from the kernel. How do they keep on working? Also, we will discuss about some of the user space applications that were broken after these, you know, curly map changes. Thereafter, we will discuss how a user space application can explicitly request addresses from the 52 bit kernel range. Later on, I'll talk a bit about how to test the V support, especially if you don't have a real arm 64 hardware, how do you test, you know, these changes that they support. And at the very end, I'll try to share some suggestions and suggest some mixed steps. Right, so let's begin. Okay, so I hope all of you here have heard about 64 hardware and you know how it is moved very quickly from good to have to at the minimum required feature for various computing use cases. So you can think of edge routers all the way up to servers, right? So you can think about supercomputers, you know, just at the top most end of the spectrum. So you can think of seven such existing use cases, right? So 64 bit hardware allows you to, well, in theory, it allows you to connect to up to 16 XB bytes of memory is quite huge, right? So we recently saw a server with 64 to be by memory connected to it. And this was a x86 machine, but you know, we are going to see more and more such servers coming up on other architectures will similarly for arm. So we have more and more use cases coming up that require addressing the ranges larger than what is normally allowed by 48 bit virtual addressing CP, right? So do note that there are still some limitations still, right? Not all the processors support the full 64 bit virtual or physical address space. So we'll talk about that more in the upcoming slides. Also, I do know that I'll focus this talk mainly on arm 64 architecture and mainly talk only about the virtual address support requirements, you know, just to save on time. So similar discussion applies to the physical address space requirements for arm 64, the increased virtual address space when we talk about physical address space, but I'll mainly concentrate this talk on arm 64 and the virtual address space. So let's see what happens further. Alright, so in the previous slides, we mainly talk about the architecture limitation in the CPU design for addressing the complete 64 bit memory map. So let's see how, you know, to really used architectures, champions in their own right, right? Fair in terms of the virtual addressing capabilities. So into X86 64 bit, basically introduce the five level page table support in both hardware and software in its 10th generation isolate course. So course like I3, I5, I7, these support five level page tables, which allow them to address up to 57 bit virtual address space. Note that this bumps the possible virtual addressing space all the way up to 128 PB bytes. And the physical addressing space also gets a bump and it is bump to four PB bytes, quite a leap, right? So on the signal lines, arm 64 introduced to new architecture extensions. So these are called the 15 bit addressing extensions, mainly the arm VA dot to LVA and arm VA dot to LPA, where LVA stands for large virtual addressing and LPA stands for large physical addressing. So these are actually part of the arm weight application profile architecture version 8.2. So it is expected that the arm 64 course with these extensions will allow you to address all the way up to four PB byte of virtual and physical address space. Again, quite a big jump as compared to the earlier maximum support of 256 terabytes that was achievable with the maximum 48 bit address support that was available earlier. So we saw that both x86 and arm 64, they have increased the virtual and physical address support that is available. And you can basically try to use these new features to develop applications that require addressing larger around range. Okay, so just a quick recap of the previous slide from arm 64 perspective. And so we got to know that the arm VA dot to application processors mean from the cortex a family, such as the a 55 a 75 a 76 these provide two extensions, either called LVA and LPA extensions respectively. And the CPUs with these extensions provide you to add a capability to address 52 bit address ranges, which is quite a big jump from the earlier support that was available with the 48 bit address space. So this makes these on course, you know, possible candidates for high end applications like servers or even supercomputers, you know, use cases like that, which also require a low power profile. It's basically a USP for USP for answers to for course. So if you want to address larger address ranges, as well as you know, consume less power doing that, probably, you know, using this on course make mostly free. Then, let's, you know, talk a bit about address spaces, you know, in the previous slide, we basically try to talk about 48 bit and 52 bit address spaces. But basically what happens in the background, when a CPU tries to read from or write to an address. So let's see what happens there. I'm sure folks here know a lot about MMU hardware already. So I'm not going to take a deep dive, you know, explaining the role of MMU and how it separates the virtual and physical address space. But let's see a simple example, you know, how to, to understand how a hardware model works when a CPU issues a virtual address and it needs to find an equivalent physical address for that same. So here I'm taking an example that is specifically suited for ARM64 architecture. But the basic underlying principle is valid for other architectures also. So when an ARM64 processor issues a virtual address for an instruction fetch or a data access, the MMU hardware basically translates this virtual address to the corresponding physical address. And this happens using a phenomena which is called the translation table walk. So usually a translation table walk comprises of one or more translation table lookups. So in this example, I'm going to show three translation table levels. Level one is the top most level and level three is the lowest. So in each translation table lookup, you basically get a descriptor as a return, which indicates one of the following either the entry is the final entry of the walk. In this case, the entry contains the physical address and the associated permissions and attributes for this access or an additional level of lookup is required. In this case, the entry contains the translation table base address for the next lookup. So you can see this from the figure that I've just shared in the slide that there are three level page tables. Level one is the highest one and level three is the lowest one. So each descriptor is either pointing to physical address or is pointing to the base address of the next level lookup table. So now in the next slide, let's look at what happens from a software perspective, particularly how the latest current supports these translation tables. So on this slide, we'll try and see how things mainly happen from a Linux point of view. So the ARM64 architecture currently supports the base sizes of 4K, 16K and 64K. So of these, the normally used base sizes are 4K and 64K. So 4K is mainly used for the embedded profiles whereas the 64K is used for the server profiles. Let's look at the virtual addressing ranges supported when 4K base size is used. So first is the 39-bit addressing range, which allows you up to three translation table levels. The second is the 48-bit addressing range, which allows you up to four translation table levels. So you will refer to the ARM64 memory documentation page that resides inside the kernel documentation for more details. Furthermore, continuing on the Linux details. So for the 64K base size, which is normally used for the server profile, let's look at the virtual addressing ranges supported. So first is the 42-bit addressing range, which allows you two translation table levels. The second is the 52-bit addressing range, which allows three translation table levels. Note that the translation table levels for 64K and 52-bit addressing versus the 4K base size and the 48-bit addressing are intentionally kept the same. To minimize the effort that is required for moving from 48-bits all the way up to 52-bit address space. Just the number of the descriptors in the first translation level are expanded for the 52-bit addressing. Again, you can refer to the ARM64 memory documentation page that resides in the kernel documentation for more details. So in my view, the best way to understand the 52-bit address space on ARM64 is to have a look at an example, right? So we saw in the previous slide that the 52-bit support is only available with a base size of 64K and it requires three levels of page tables. So let's see how the three level kernel page tables. The topmost one is the page global directory, PGD. Then the next one is called page middle directory, PLD. And the last one, PTE, which is called the page table entries, fit into the picture here. Let's start from our earlier premise. The core issues are 64-bit virtual address and we want to find out an equivalent physical address for the same on ARM64. So on the extreme left of the picture, you can see the TTBR select bit, which is bit number 63. So it selects basically between the kernel space and user space addresses. So TTBRX holds basically the base address of the level one page table. Now it's 51 down to 42 in the incoming virtual address. Tell us about the PGD index in the level one table. Similarly, bits 41 down to 29 in the incoming virtual address. Tell us about the PMD index in the level two table. And lastly, bits 28 down to 16 in the incoming virtual address. Tell us about the PTE index in the level three table. So finally, the derived PTE value and the lowest 16 bits of the virtual address are combined to determine the final physical address value. So I hope this example makes things more clear. So as you can see in the figure, we have three page tables, level one, level two, level three, and certain bands of the bits of the incoming virtual addresses are used to index into these tables. I hope, you know, this makes things more clear. Again, feel free to refer to the ARM with documentation from ARM, mainly regarding the address translation for more details. Right. So we come to an interesting aspect here. So how do we decide the kernel design approach to support both the older ARM 64 CPUs, which don't support the 50-bit extensions and also support the newer ones, which do. So in the kernel, we have selected an approach to keep a single binary and make a decision at the early boot time to check if the underlying hardware is supposed to 50-bit extensions or not. So if it does, the kernel uses a 50-bit virtual addressing mode. Otherwise, it falls back to the default 48-bit or low virtual addressing mode. So let's take an example of two platforms. The Ampere EMAC ARM 64-volt station, which doesn't have the support for the new extensions, and the new footage to FX700, which claims support for the V8.2 extensions. So, I'm sorry. So, as you can see in the figure here, that, you know, the figure demonstrates that the decision about the addressing range to support is made at the early boot time. And accordingly, either the 48-bit or the 50-bit addressing range is used. Again, you can refer to the ARM 64 memory documentation page inside the kernel documentation for more details. Fair enough. So on this slide, we'll just quickly look at the kernel variables, which the kernel code uses. Mainly to make sure that it handles both the 48-bit virtual address as well as the 50-bit virtual address width. And also, it is able to make an early boot time decision to switch from 48-bit to the 52-bit virtual address space if required. So it uses mainly three variables. There are others as well, but, you know, just not very useful for this discussion. So let's discuss about these three variables first. These are the V8 bits, V8 bits minimum, and V8 bits actual. So the V8 bits is actually denoting the maximum size of the virtual address space. The V8 bits minimum is denoting the minimum size of the virtual address space, whereas V8 bits actual denotes the actual size of the V8 space. So if you really want to check the V8 space range supported by your running ARM 64 kernel, you should look at the value reported by the variable V8 bits actual. So let's move further. So do we need to keep something additional in mind when we talk about the increased memory map support in ARM 64? Surely. We do need to keep in mind that, you know, the kernel memory layout was flipped starting from kernel version 5.4 to allow a larger virtual address space support. Let's look at the figures on the slide to understand this better. By default, with up to 48 bit virtual address support, the ARM 64 kernel map looks something shown on the left side. The direct linear range was, you know, mapped at the farthest end of the memory range, whereas the kernel text range was kept near the newer address ranges. For the 52 bit support, we flipped basically the kernel memory map, but we decided to keep the kernel text addresses same as earlier. So the direct linear map range goes from FFFFFFF all zeros address. And whereas after a gap of the kernel address sanitize with the kaasan, the kernel text and other addressing ranges, they are kept. So this flipped kernel map actually got some interesting problems in the user space. So let's look at them in the next slide. Right then. So what happens in the user space then, unfortunately, due to the flip in the kernel memory map, a few user space applications, especially the ones that are used to debug live kernel or which are used to analyze the VM code dumps. They get broken. I just wanted to let you know that there are five minutes left so far we don't have questions. So, okay. Sure. Okay, so unfortunately, because of this flip, we actually have some use this applications broken. The main reason for that is that these applications also need to perform a virtual address to physical address conversion. So you can see that some applications like exit tools crash utility and make them files. These were broken after the changes starting from kernel which is 5.4. So I have proposed some fixes for these utilities, while some have been accepted others are still pending some discussion.  A million dollar portion coming up right now in your mind is what would be, you know, what happens when, you know, we use other applications which are not used for debugging kernel per se. What happens to these existing applications to the break because they are expecting your address from the kernel which is 5048 bit. So the answer is no, because we decided to keep an optimal model for the user space applications that is the kernel by default will return address from the 48 bit range. Right. And if the user space applications really want a pointer from the filter with range, they can explicitly pass a hint, let's say in the map call to request a address in that range. So the obvious question that would pop in your mind now is how can I test the 52 bit, what you let us support, especially if you don't have any real arm 64 hardware. You need not worry simulation is actually a friend here. So first option is using quemu. So you can basically use quemu I have used an example of running the quemu arm 64 guest on my federal rights it is its host here. And then you can use the word builder tool. Here I'm creating a federal 30 arm 64 guest. Then you can also see him using quemu. The second option is to use the arm be it fast simulator model, which can be downloaded freely from the website, you can get more information about these models from the arm website I have added link for that in my slides. You can exercise Linux Debian or Fedora images on that same. So you can see the screen shot of the simulator model running a Fedora 30 arm 64 image in slide below. Right then. So what are some of the pain points in the next step, the first step is to fix the broken debugging our related user space applications, which is a work in progress, I hope these will be fixed very soon. So it should be, you know, just to make yourself and others aware of the flip colonel at this map after the kind of 5.4. So this might, you know, cause some issues so just be aware of that. Also, newer or willing application owners can give the 52 bit addressing a try, they can pass for example a hint specific into the map called just to see that they can address get an address that is in the 52 bit range from the future. The next is expect more changes around this feature in the near future because it's still getting stabilized. So, for example, has already, you know, most of that said to extend the direct linear map range for the 52 bit configurations. So towards them, I would just say test the upstream kernel if possible, and you know report issues if there are any upstream so we have a question from David. I think discussion requirement tools like tech sex, it is related directly to the memory mapping or other related issues. So yeah, could you repeat that? Sure. Other pending discussion requirement like sex related directly to the memory mapping or other related issues. So mainly it's memory mapping. So there were some user space applications that were broken. So I think these should be fixed pretty soon.  We have started just testing that mainly the vehicle available was a simulator model. Now we are seeing a few hardware coming up that that support these extensions. So the discussions are what mainly, you know, centered around what's broken and what can be addressed through the new flipped kernel memory mapping range. But yeah, I'll expect that there would be more, you know, more discussions and more changes. So just keep an eye on the 64 memory dot txt. I think it would be changed a bit further in the coming days.


AI will replace humans has been a very popular headline lately. So should you fear for your job? The short answer is no and let me give you four reasons why. Number one, most jobs that we have won't see a huge productivity bump because of AI. In my previous video I covered the history of productivity and the impact AI might have on productivity. And we will see a very big productivity boom but that's only for the desk workforce. For 75% of the workforce, work has a physical component to it. Nurses, carpenters, taxi drivers, teachers and cashiers, yes their work will change because of AI but it won't see a huge productivity boom overnight. Number two, work has always changed and it will continue to change when AI comes into play. We don't have bowling alley bin setters anymore. We don't have VCR repairmen or switchboard operators. About 17% of all the jobs that existed 100 years ago don't exist anymore. And the world is better because of it. We have robots, we have Netflix and we have cloud telephony systems. Number three is that big jumps in productivity have never led to less work. We have seen a huge bump in productivity between 1870 and 1970. This did not lead to less work however. If you look at the data, there are more people employed right now than ever before. During that 100 year period we did however start working a lot less hours a week and it might be time to continue that trend. Number four, we are really bad at adjusting our behavior and AI won't change any of that. Digitalization promised a new boost in productivity but that never really happened. This might be because we spend about two and a half hours a day on social media and these very addictive devices. What this really shows is how big the behavioral component is when it comes to adapting to new technology. Really 30% of all knowledge workers know how to type with 10 fingers effectively. And loads of knowledge workers still don't use the keyboard shortcuts for copying and pasting. And people are still creating documents on tools like Word that represent a typewriter, a tool that was supposed to be phased out in the 70s. And we are still running companies like there are factories producing a T-forged. We are simply really bad at learning to use new tools and new skills and I don't see AI changing any of that. But what if we do want to become far more productive in this digital age using these AI tools? Well here are some things to take into consideration. There are some huge benefits that can be gained by the knowledge worker. I'm not exaggerating when I say that you can become 25-40% more productive using AI tools. But you have to learn the skills and learn the tools and you have to spend time on training. Training your knowledge workforce to become digitally fit is one of the best investments an organization can make. If a workforce becomes more productive the gains will end up at the shareholder. So what if we share the proceeds of these improvements? So what if we started working towards the four day work week? Now I can imagine that a four day work week might sound ambitious at first. But working a few hours less might be a great place to start if the total organization is willing to invest in it. Now it's also good to realize that your organization isn't working in isolation. If we know that the work will change we should be re-skilling our workforce together. Something policymakers could also be focusing on. Now one final word to the people developing these AI technologies. It's nice that these technologies can replace humans but it's not the best for humankind. It's way cooler and way better for society if these tools augment the human workforce. Research shows that this reduces inequality and it's a far nicer outcome for society. Now to be honest I hope I'm very wrong. I hope AI tools make all of us way more productive. And with our workforce aging and becoming smaller because of it AI might actually be a blessing in disguise. Thank you voice for making these videos possible and thank you all for watching and I would love to see you in the next one. Cheers!


What is the essence of sin and objectivism?  What is the thing, the cardinal sin? What is the cardinal sin for objectivism that leads to all other sins?  Well, it's not ignorance. No, no, no, no, no, no, no. Ignorance is not a sin. Ignorance in and of itself is just the state you're in. You're responsible for not being ignorant, but no. Inobjectivism, not in Christianity, Frank. It is irrationality. It's not thinking. It's evading. Evading facts, evading reality, shutting down your mind, refusing to think, or purposefully ignoring facts that should be part of your thinking, so in a sense pretending to think. So the cardinal sin in objectivism is irrationality, evasion, lack of thinking, not willing to think. So keep that in mind, right? If you remember when we talked about the objective's virtues, if we talked about the objective's virtues, all the virtues are really aspects of rationality. All the virtues are the application of rationality to different aspects of life. I was going to do a show on the unity of virtues. I'll do a show on the unity of virtues at some point where we'll talk about this in more depth. But rationality is the essence of virtue in objectivism. All virtue integrates into rationality.  That is the essence of morality. And the essence of immorality is the negation of that. It's when you don't do that. It's when you ignore the rational, when you are irrational. That is objectivism. It's very integrated, it's very integrated. For objectivism, morality boils down to use your mind. Think. Think for the purpose of living. The purpose of morality is to guide our living. The way to do it is by thinking. And the purpose of living is to be happy. It's life, fully as a human being. Ignorance is not a vice. Ignorance is something to be overcome. It's a challenge.  The things you don't know. It's an important decision to stay ignorant. That would be a vice. Not to do the work necessarily to figure it out. But all of the objectivist ethics is geared towards your survival as a human being. Which survival in this context means you're living to the best of your ability. You're living the best life possible to you based on your mind with the goal of attaining happiness. Now what, for example, is the objectivist view of pleasure? Well, if the purpose of survival, if the purpose is flourishing, if the purpose is happiness, then pleasure is great. We love pleasure. It has to be rational in a sense that the pleasure is not undercutting anything. It's not hedonistic, short-term, unthinking, undermining of other values. But pleasure as a guide and as an experience is something we relish because the purpose is to live well. And to be happy and pleasure is a huge part of that. You want to feel good. Now the alternative that is presented in morality is altruism. In objectivism it's your life, your pleasure, therefore your mind, discovering the values necessary for your happiness and pursuing rational Christianity. The purpose is not your life. The purpose is what? What is sinful? What is essentially fundamentally sinful in Christianity?  The purpose of life is not to be happy. The purpose of life is not to enjoy, to have pleasure. The purpose of life is what? It's the next life. It's the next life. This life, not important. So in that context, so the essence in a sense of Christian ethics is not so much the helping of others. The essence of Christian ethics and the essence of altruism in our culture is not about others. The essence is the denial of self. The essence is the denial of selfishness in any sense. The essence of Christian morality is selflessness. The only purpose of pursuing self is to sustain you so that you can serve God, through maybe serving others, but to serve God through serving others. But everything is geared towards selflessness. You must not think of self. You must not take your own pleasure and take account. You must not think of what is good for you because you must submit. You are nothing. You are not worthy. What we need today, what I call the new intellectual would be any man or woman who is willing to think. Meaning, any man or woman who knows that man's life must be guided by reason, by the intellect, not by feelings, wishes, wins or mystic revelations. Any man or woman who values his life and who does not want to give in to today's cult of despair, cynicism and impotence and does not intend to give up the world to the dark ages and to the role of the collectivist roads. All right. Before we go on, reminder, please like the show. We've got 163 live listeners right now. 30 likes. That should be at least 100. I figure at least 100 of you actually like the show.  There you go. Start liking it. I want to see that go to 100. All it takes is a click of a thing, whether you're looking at this. And you know the likes matter. It's not an issue of my ego. It's an issue of the algorithm. The more you like something, the more the algorithm likes it. So you know, and if you don't like the show, give it a thumbs down. Let's see your actual views being reflected in the likes. But if you like it, don't just sit there. Help get the show promoted. Of course, you should also share and you can support the show at your own book show dot com slash support on Patreon or subscribe star or locals and show you support for all for the work for the value. Hopefully you're receiving from this.  You'll know what shows are on when they're on. You'll get notified. Right. So, yes, like, share, subscribe, support, like, share, subscribe, support. There you go. Easy. Do one or all of those please.


We recommend asking the landing in approximately 10 minutes from now once again make sure your seat belt is completely fast, it's a larger motor, but especially on board crew today we would like you to fly with us and we hope to see you soon and all of the riders can look like. Your seat belt is now fast and the aircraft has come to a complete stop and the fasten seat belt sign has switched off for you. The local time is 20 minutes past 4, stay cool, we're turning the passengers stay, thank you for flying with us.


Okay. So this is just kind of fun and games. So speak up and I'll try not to take too long. So this question comes up. Occasionally to us we get asked by people that are just learning BPF. Like they don't know much about BPF. They're like a director or something or they're like doing some sort of like analysis of languages, right? And the question was... Or analysts. An analyst. There we go. Thank you. And so the question was like asked of me a couple times and I was thinking, well, is this actually true or not true, right? If you don't know what a Turing machine is, like this is my cartoon. I'm not going to write the whole formula down. Like you go to like Wikipedia or anywhere on the web and find the like the actual articulation of a Turing machine. But if you don't know, the basic idea is you have a tape. That's the top part. It has infinite memory, right? And then you have a needle there that can either write, can read and write to the tape. And then you have a program at the bottom of the state machine that tells you if you should read, write, and then if you need to go left or right. And there's like a formal function that that has to meet and a definition of the tape and the alphabet and all that good stuff. But I'm going to skip over the formal definition and just talk a little bit about this part. So what does this actually like, what does this mean like in, you know, what's Turing complete mean in kind of not mathematically formal terms? It means you can do loops. It means you have control flow and you have this unlimited memory tape. Of course we know that that's not actually true. So we have this arbitrarily large memory is how we replace that. Technically that moves you down in the language hierarchy and all that fun stuff. But for the fun and games part, we're not going to define all of that or just say arbitrary large memory control flow and loops. Then what does it actually mean like why do I care? Is it probably a good question that I always ask when people ask me this? There's some things that cannot be solved by Turing machines. There's some things that can be solved by Turing machines. The halting problem is the classic one. You cannot tell if you're going to halt. A mortality problem is basically do all of these strings terminate with this machine. The word problem for groups is given like an expression and a set of rules on that expression. Can it be reduced to the equivalent strings basically? It's like a fun algebraic problem. So those things cannot be solved. What can you do? You can simulate Turing machines. If you've seen the game of life, you can run the game of life on your Turing machine. You can compute general recursive functions. I don't know about you, but I've been really wanting to do that with my VPF programs. What else can it do? It can do all these useful things too, right? Like actually parse traffic, DDoS protection, collect metrics, file integrity monitoring. So like all this useful stuff VPF can do, right? Whether or not it's Turing machine complete doesn't really matter to do all the useful things. So who cares? This is sort of my caricature of people that ask me this question, right? So usually it can be somebody who's learning VPF, who's trying to understand the big picture. Maybe they have like a language and compiler background. Maybe they're an academic and they just want to like they're coming to VPF and like asking these kind of questions and trying to compare it to other languages they know, right? The other, the second person who comes and asks this question is usually already convinced that it's not Turing complete and they'll say things like you can't write an HTTP parser because it's not Turing complete and what if you have endless headers in your HTTP parser, right? Or like I have Geneva and I want you to parse every TLV and the Geneva thing, right? So these these kinds of things and they're usually already set against VPF and they may or may not have another solution in mind usually. And then the character three is kind of myself who's just thought like this would be fun to do. So let's do it. Okay, so a little bit of side point. So the main problem is going to be the loops, right? Because I know VPF can do control flow no problem. VPF can do arbitrary memory because we have maps of array sizes that can be arbitrary large. 64 point size bit pointers aside, right? Then the other point I just make when people ask this is like they're worried about upper bound times like being able to loop. Having an upper bound is actually a pretty useful property of a system, right? Usually I don't want my networking to run forever. I want it to have an upper bound. Same way with any kernel security schedulers, XDP, right? In general, at least in most of the work that we do, we're trying to drive down the program cost. We're not like trying to see if we can do more loops. So there we go. I actually have trouble finding a useful use case for VPF where I would not want this property of boundedness. So I'm interested if there's some reason people want unlimited runtime VPF where you have no clue where it stops, right? I couldn't think of anything particularly useful.  Yes, let's go, you guys. There was a real use case. So there is this causal profiler approach where you slow down everything except like one or two different things and measure how that like actually one thing and then measure how speed kind of like you simulate speeding up something by slowing down everything else. Okay. And then like you measure how much like if you speed up something to X, how much it influences like the overall latency, right? So why not? Like VPF slows down everything except like one code path. So you do that with like a sleep? You can burn CPU or sleep, yeah. Okay. Cool. I'll put that in the next slide deck. Something also relevant is that I'm thinking of how to inject the latencies using VPF. So there's the latencies you can't, I want it to be like to be customizable at a runtime. So you specify the latencies at runtime. So when you write a program, you don't know how long going to delay. And that's something I'm thinking of recently. Okay. It sounds almost like we need a sleep, which wouldn't, you know, have the have a VPF helper for sleeping and then sleep for as long as you say. Cool. All right. Two use cases. I stand corrected. All right. So if I want to show that it's trying complete, the real hook is like how do we do loops, right? Like how do we get something to run forever? I think if anybody objects, let me know. If you think that the memory maps aren't arbitrary large and the control flow is not an if-else, but I think we're pretty good. And the arbitrary large depends on that we don't want to argue about 64 bit pointers, which some people do. All right. So we basically need to do again. So this is what I did for a do again, so that we could recursively loop and just create a callback with a timer of zero. You'll get right as long as there's you put back on the timer list and you'll get called back immediately with your callback. And this will run forever until it terminates. Any objections to my loop? It's pretty close, right? It's not much different than like a CPU relax, for example. I don't think anybody would argue CPU relax is okay in your loop. All right. So we have a loop, so like with that. And so then the question is, is that enough for turning complete? This is just a sketch, but what you would say is showing something's turning complete usually you'd want to build something that simulates a Turing machine. That's sort of a pain to do. So we want to find something that's Turing equivalent, basically because of the properties of Turing machine. If something's Turing complete, you can simulate the thing that's Turing complete, then you can simulate Turing machine by walking through the chain. So there's these things called Tuesday systems, which are sort of interesting and useful, but also easy to program.  So you can just say, when I see an A, I want to append A, B, A, B at the end. And when I see a B, I'm going to append an A at the end. And then there's a cut number, which says how many numbers you want to take off the front.  And there is a papers, I didn't put a link, but I can put a link to it. There's a bunch of papers that will show you that this is actually equivalent to a Turing machine and can simulate any Turing machine, which gives you an any Turing machine considerably. It is a universal Turing machine, and so you get your chain. So all you need to do is simulate this. All right. Oh, I'm not going to do a demo, I guess. Let's see. Is this going to work? Here we go. Did it crash in the back? Oh, I killed it. Okay. So basically, in the Silly and Meabee PF library, mostly because I wanted to figure out some of the Silly and Meabee PF APIs on the latest version, I created a Turing example. Basically, it's an implementation of the two tags with the set of productions, and what it'll do is when you run it, type in my secret password, and what it'll do is it'll sit there and run until it runs out of memory, and then it crashes. But what it's doing is, since this is a non-terminating example of a two tag system, you probably can't see it from there. It's replacing A B with B A and B with A B. So it's going to sit here and run forever since this is a non-terminated one. The terminated ones are also interesting, but it's kind of more fun to show a non-terminating case for this example. And it's one program execution with a timer. So you run the program just once. You don't constantly run it. No. No, no. This is just a... Here, I'll show you the code to pop that, otherwise it never exits. So there's just an f3. The code's really ugly, by the way.  So this is the loop machine. So it's just this function, which you can see here when we terminate what we do is we just post to the ring buffer, we post the string. So every iteration of this loop, we're posting what the current string is to over the ring buffer. All you're seeing on the printer side is that printing. So we just read the buffer, and every time we get a new string, we print it. That's the terminating case. You can see I'm messing around with it there. But down here is... Here's the production rules for A. Here's the production rules for B. So they're in a map, so you can put whatever production rules you'd like. So we just read out the production rule for that entry, and then we basically prepend it and then cut based on whatever the cut value is that we configured from the user space. So print case there, because I wasn't sure it was actually working. And then... So that's one step.  Run it again for every step. We'll run until it terminates, or it will run until your system runs out of battery. How did you trigger it? What was the trigger for this? Oh really? TCP Connect, because you know... Why not? It's an f-entry program on TCP Connect. But I was smart enough to do this enable thing so that it didn't start a new turning machine every time my system connected to something, right? But then anyways, what you do is you just... I mean there's probably tons of better ways to do this, right? But I just write it out of a map, you knit this, and it has your knit configuration out of a map. It's an array of one, so it's a load underneath the covers. You look up your tag. Your tag is that string. And then you kick off the timer.  Maybe this is interesting. I don't know if everyone does this, but if you want to copy arbitrary string sizes, right, you just do a probe read from your from your string back into your string. That way you don't have to do like a try to do a mem copy. Just use the helper to do the mem copy. Mem set to zero. You pass now as a source for probe read. And it should be bpfpropriet kernel by the way. You are setting a bad example here. You know what? This runs on 419. So when were timers introduced probably after the probe read? With bpf it doesn't matter. You always use bpfpropriet kernel and substitute bpfpropriet on old kernels. I'll fix it before the blog posts. Thanks. I mean this whole program's a mess, right? Like let's be honest. I mean and it's from tcbconnect. So anyway that's the program. That's my trying complete thing. I think we might do something fun with it. Yeah I don't have anything else. That was just the fun after you know break thing. No questions. Yeah no questions. Perfect. Thank you so much. I think now we convince the analysts going forward that we're too incomplete. You can program anything in bpf you want to. There's no limits. It's as powerful as your computer. Yeah bpf foundation declares bpf too incomplete from now on. We're good. We should start you know computing recursive functions and doing like serious what math math functions inside bpf because we came. Cool thank you. Thank you so much.


This is a very special time of the year. Not only is it the holiday season, but it's also the season where we advance our Navy's newest petty officers. And some petty officers are able to select to the next pay grade. So this is always a very exciting year for us. And normally right around the time of the Thanksgiving long Thanksgiving weekend, those advancement results come out. So I know that there's probably, hopefully a lot of listeners out there that are anxiously awaiting those advancement results and are getting pretty excited about learning whether or not they're gonna be selected for the next pay grade. You know, we wanna make sure that for each person that's selected for the next pay grade that they complete the appropriate leadership selectee course. So that would be just your standard petty officer selectee course, your second class petty officer selectee course, or your first class petty officer selectee course. And this is a very important step in your leadership process. Particularly I would say, I put the most emphasis probably on that third class petty officer leadership course because that is really their first opportunity to get indoctrinated with some additional leadership skills. So it's very important that commands take the time to properly administer this course. It's three days, I have seen commands try to do this course in two days, but if you wanna get the most bang for your buck out of this course, out of any of the three courses I just talked about, you have to take the full complete days. And I'd encourage that the cheese masses out there get actively involved in this. One of McPon's developing leaders is what we talk about in the leadership mass a lot. And we control what we own. As senior enlisted, we own enlisted leadership. So we have a responsibility to ensure we have a responsibility to ensure the success of our Navy.  The Mass Chief Adaro said that the results coming out and I'm sure a lot of sailors are anxious to get their results. I'm sure there's gonna be some sleepless night. I know I did, I had some sleepless night before the result came out. So by the time we get our results, sure, everybody will be looking at their profile sheets. Hopefully they do, okay? And we need to understand what items are being considered in our advancement. So we need to understand how the final multiple score is being done or being scored. So the factors for advancement is, the mainly is the performance mark average. It takes a lot from the multiple score. For E4 and E5, it takes about 36% of our points. So that's 64 points total. For E6, it takes 50% of our score. And for E7 exam, it takes 60% of our score. So as you can see, the higher the pay grade, the higher the emphasis on the PMA, which is how we perform in our command. So then that's one of the big thing. And that's really calling for sustained superior performance. From the beginning, from the get go, from boot camp to up to your retirement, you should be striving for that. And that, because that will affect your advancement. And then the standard score, which is this score on the test. I think so many times sailors miss how important that is. Normally what a sailor does who doesn't make rate the first time or second time, is they use that profile sheet as your sole source of determining whether or not they should study a certain topic or not. They look at that profile sheet and they look at it and say, oh look, I scored in a 90% tile in administration. So I must be pretty good at that. So they just stop studying that. I always tell sailors, in addition to just starting early, you know what, use that bibliography for advancement. You know what, and if you don't know where to get it, you can talk to one person, your command career counselor, who's sitting right next to me, or you can just simply log on to NKO. NKO has all that information. They have the latest bibliographies on there. And please start early. Don't wait for things to happen to you. Make them happen for you.