Hey guys, it's Leanna and I'm here today with my brother. Talk about, what are we talking about? Uh, the first law trilogy. That's right, the first law trilogy. If you've been watching my channel for a while, you'll be super shocked to see me talking about Abercrombie books. So I think if there was ever any doubt that we were related, I think this confirms that we might be related, because we both really like these books, right? A lot of people do, right? Everyone is my family, my Abercrombie family. So why did you decide to read these books? You have to do the first one to me. How long ago? It's been a while. But why did you decide randomly now to pick it up? You talked about it a lot and uh, saw it sitting on my show. So you're saying in real life I'm the same as I am on my channel, I just talk about Abercrombie all the time? You can say yes, it's fine, it's not a trap. So you kind of like binge read them, huh? Because like, you texted me that you read the blade itself, and you were like, well you didn't give it to me before they were hanged, so I guess they'll just read Red Rising, and the next time I talk to you you're like, oh I got it on my Kindle. I was a little disappointed that the first one felt inconclusive, but I was interested to learn more, so I got the next one on the Kindle you got me. And then did before they were hanged feel even more inconclusive? No, I felt like, well, maybe because I was sort of expecting it that time. Yeah, less displeased. I know you don't use like Goodreads or anything, but if you were, if you had been like giving star ratings to them, one out of five, or one to five, as you were going, how like would you have rated them? I'd probably give the first one with four. I only had minor issues, and then if the pacing was not that great, and then, like I said, I like to have conclusive, and somewhat conclusive endings. Even with the beginning of a series, you wanted to have a conclusive ending? Yeah. All the answers, don't need to read books, too. No, it's not it, but it just felt like it kind of ended in the middle of things. Most people say that, and even I thought that. Yeah. I'm just yanking your change.  Yeah, I was really impressed. Oh yeah, this video will have spoilers. We're not trying to avoid spoilers, so go ahead. Oh yeah, I was just really impressed with all the things I could remember that were probably all that were clues and all that. Like which thing were you the most like, oh like I need to look for that when I reread it. Pretty much everything by us, too. Yeah, so for me like I remember, I think one of the main things that I was like, oh I need to like go back and look for that, or like I probably will keep an eye out for that, was Malakas Kwai, like when it stopped being Malakas Kwai. It was very noticeable when they left, while he kept mentioning that he was much less chipper and stuff than before. But also he like knew the answers to questions now, he wasn't like a complete dunce. Right, yeah it was definitely something fishy there. But of course like when the first time you're reading it, you don't expect that he's not him. When they first revealed that there's shape-shifting, or when he first revealed that there's some shape-shifting magic, I was a little disappointed. It felt like a bit of a easy, yeah I was gonna, yeah. But at the same time, because he doesn't overuse it. Right, and then it's definitely planned for I guess. Yeah, and all the times that a character notes that someone they're talking to has two different color eyes, and you know that's your result for her. I was trying to remember who the person with two different color eyes was later, and then I figured that would come up. Yep, it did. So I know I keep saying that Glock does my favorite character. Who was your favorite character? Yeah, that's my, it's interesting, all kinds of conflicting motivations and such. And such. I mean it's interesting to see the idea of following from that perspective. It's not usually a perspective in a book. Like he might be a character in a book, but it's not going to be the one that you're... It's definitely not a good guy. But not just that he says like, there's often bad guys you follow, but it's not usually like the crippled torturer. He would just be like that creepy dude that's like also there to like round out the villainous image of the baddies, you know? Yeah.   He's suffering a lot though. But like you said before, maybe it could have to do with me reading all the books back to back. Well I feel like in general when I read series back to back, there's a lot of things an author will do to help you remember that this is the thing. But if you've just read it, you're like, I know that's the thing. But you're like, if I was reading these as they were coming out, that would be like quite helpful. I learned that all of his expectations were always wrong. Not always. Generally. If he'd be going to meet Salt or something. Oh in that sense, yeah. But I mean like when he was piecing mysteries together, like on his own in his head, thinking about who's behind what, he was often kind of on the right track. Yeah, sure. So I thought that would be me. I just meant like more expectations in the moment for what's immediately gonna happen. He talks to West in the first book and like finds out that he did try to visit him and that his mom had turned him away. Like that's a moment where like for one of the rare moments where Glock just like caught like not being snotty and like snide where he's just like, oh I did have a friend. Oh okay this is awkward. It was like kind of sweet too. And then I love that he and Artie end up being like. Yeah that was interesting. And I like that it kind of happened over time. It wasn't like at the last minute Artie was like, I pity the cripple and I'll be here. Like they actually like had a building friendship that over time you'd see like, actually like they could have a good, pretty good life together. Almost like flirting sometimes the way that she'd like, oh well I'm just like a such a cultured lady and he's like, and I'm the dashing hero.  So I don't know if you know or if I've told you or if you figured it out, but like one of the main characters in the new trilogy is Savine Dan Glock, their daughter. Oh I didn't know that. I don't know I was excited about seeing that when I heard that she was in it. Yeah. So he, oh no way that's a, it's just Al's. Yeah, but she was raised by Glockta, a nurture over nature. See a character in the, yeah. You get to see him daddy Glockta.  This happens like 30 years later. He's still ahead of the inquisition. And so like, so yeah, so the characters that you'd like now know who they are, Savine is obviously Glockta and Artie's daughter. The prince, or so who's now Giselle and, So Therese? Therese, their oldest kid. The dog man's daughter. He has a daughter? No, but in between from when the series ends and when anyone begins, he has a kid. So she's pretty, she's like 20. I don't know if there's anyone else that either you would know about or there wouldn't be a spoiler, spoiler for the standalone to tell you that they're in it. But any of these, also in Sharp Ends, the short story collection, there's two short stories that I think would be of interest to you. Now having heard the trilogy, one is seeing the Luddy Nine back when he was with Bethod, when he was like working for, like when Bethod was like, you're the one that said that we have to go this and you went and attacked them and you did all this, you see like a moment of when that happened. And then one of the short stories is also Glockta when he was still young before he got captured by the Girkish.  Yeah, so it's kind of weird seeing Glockta as that. Basically playing a jazzle. Is that how you were saying it, jazzle? Yeah, how do you say it? Giselle. Giselle? Why is that more correct? Because that's how the audio book narrator says it. I don't know, I guess that means it's correct. Interestingly, and I was just telling somebody else this, the audio, so like it's like pretty universally acknowledged that the audio books for this series are some of the best audio books of all time ever of any kind. Yeah, you mentioned that. And so he does a lot of voices and accents and he did a French accent for Pharoah and Joe Ebra Cromby when he, there was an interview with the two of them and he was like, I wasn't picturing that when I wrote her for the first time but after hearing Stephen do the French for Pharoah he was like forever after she was French in my head. It's really, because he does, it's not a pretty French accent, it's a very guttural one.  It's pretty great. It's pretty fine. Yeah, so if you ever decided to give an audio book ago these are fantastic. But yeah, so overall you liked it and you want to read the stand-alones, right? Yeah, I'm eager to read the rest of... Read Besser Colde's content in that universe. I don't know if you know, I know I told you they're stand-alones but each one is kind of, they all take place in this universe obviously but each one is kind of inspired by a different genre that Joe Ebra Cromby want to try his hand at but still within this universe. So Besser Colde was inspired and he himself, before he was an author, he was a video editor so he's kind of a film buff. So he was inspired by an old revenge thriller called Point Blank and so he is kind of, that and Machiavellian politics were kind of an inspiration for Besser Colde. That the heroes is based on All Quiet on the Western Front and Red Country is based on the Western Unforgiven. So those are kind of the tones. The trilogy I read. That was just him taking like a traditional fantasy arc and kind of shitting on it. So you've got like a quest and a wizard and a chosen one but it's all kind of like the horrible version of that. Feels more realistic I guess. You have to be realistic. So that was kind of the project because he read The Song of Ice and Fire and I was like oh so fantasy can be like gritty. Like all right let's do it. So that was kind of the project of it was to, like that's not me suggesting that's what he said he wanted to do was to kind of like take that traditional fantasy but like make it like ugly and gritty. Yeah I was kind of expecting more main characters to die. If they're the POV then the problem becomes how are you going to show the audience the rest of what happens here if the person you're following but plenty of other people die and some main characters die. Well one. Only one. West. I mean of the ones you're following.  Well then there's Toal and Grim. But I feel like the POV for that is the dogman. So as they give the people whose actual perspectives you've been following West actually dies. Yeah I guess she was the only one. Two of them became kings. Yeah.  Yeah I'm sure. Logan just trying to be a nice guy. It's not working out. I'm trying not harder to do that though. You have to be realistic. It's one of the things that I like best about it is that each character like every time they talk, every time they do anything, every time they say anything it's like them. Like recognizably them. And they always go through the same list of complaints in there. So you didn't see it coming with Byans being white the puppeteer. Not the extent of it I guess. Valentin Bulk. Yeah I didn't really guess that he was in charge of a bank at all. That was a big surprise. The evil banks. They were behind everything.  Story was mostly true. He just kind of left out the bits where he's actually the villain. And you're like oh I've been around this whole time you were like lowkey the villain. I do like the magic being kind of like used very sparingly and still remains kind of mysterious because that kind of makes me feel more real. Cannibalism being incorporated the way it was. How much do you have to consume in order to care about Logan drinking blood and stuff? That's not eating flesh though. I think I would imagine it's more than just picking up like someone's flesh and eating it. Like I would imagine like part of this magic involves eating flesh and then thereafter you continue eating it. Yeah it might be worth a try. Quite enjoy like the kind of almost like theological debates that they have especially in the beginning. More in the blade itself when like he's questioning Kwae and Kwae is trying to give answers and failing at it. What he's like that's when you're learning kind of what the first law is. Baez is the one that even says the first law is a paradox because he says you can't touch the other side but all magic comes from the other side. So like the way that like kind of feels the way that kind of when people talk about you know religious stuff you know like can God make a something an object that's too big for a God to lift himself? Can he microwave a burrito too hot to eat? What? That's the Simpsons really. Is there anything like you wish that it would have like given you an answer for or that you would have seen or that you expected and didn't happen? I get the feeling Logan died at the end. Overall I was pretty conclusive in the end which I like. However you asking me like is this going to be a conclusive end? And I was like pretty much but like That's conclusive as I would have wanted it. I think I said I don't want a disney ending. And Joe Abercrombie was forever in danger having a disney ending. Like did you know before you started the blade itself that it was going to be where like everyone's like terrible and like there aren't really any good guys and like it's not like it's not like we live time. I didn't really know what to expect.  Why is everyone terrible? I didn't think everyone was terrible just thought everyone was kind of had their own motivations I guess. Nothing, no one really sticks out as a terrible person. Miklun is a torturer. Yeah he's easily the worst.  And then he has his juzzles just kind of just all of the cool himself and selfish obviously. It is kind of a I liked it because it seemed like realistic characters. You have to be realistic. It was kind of like really fun to me at the end of last argument of kings to see kind of full circles like having seen where Giselle started the blade itself. And then when people like West are like oh my god what is who who are you and what did you do with Giselle?  And like when you see it's not unbelievable that he suddenly shifted because when you've seen him shift over time and also you've seen in his head where he's thinking to himself like what am I doing? Like I'm supposed to be kingly like I'm not anybody. So like you know that he's just really coming from me and being like I don't know what I'm doing but from the outside it was like wow the king. I like the character development.   He really screwed himself a lot. But then even then when he's like okay I know he's gonna marry her and then Baez is like you're king now you're like he's like I've made promises. Before that he gets to be like a colonel or something. Yeah but then when he was like you know I've made promises and then when Baez was like you have you know scores of princesses to choose from and Giselle was like well I gotta do that though because like what can I say like that's just what I have to do now.   Especially when he's like getting up for it and he's like oh she's not into me like this is not gonna be so bad.  And by the end because they were always like at each other's troubles but by the end it's so funny to me watching Pharaoh and Baez when Pharaoh was like what's this?  She's like tell me now.  Like I don't owe you anything. I love their attractions at the end. She's had it and he's had it. Baez has lost patience too and he's like I'm not putting up with this from you anymore. She's like give me. Yeah I'm still a little very confused about all the ancient history. Yeah but I think well I think it's partly one I mean it is partly me I think that I don't get it and partly also that it's kind of it's supposed to be. Yeah it's kind of mysterious one and two kind of not the point. Like the point is the Baez is behind everything. However and whatever weird wizardy things he does. He's evil and he's behind everything. It's not clearly evil either though right? Well it's like it's the kind of evil of like Ozzy. Baez is trying to prevent worse evil. It's like the what's his name from Watchmen when like Ozzy Mandy is it's basic he's Baez is like that where he's like this is for the good of the people they don't know what they're doing. Like I need to do this thing and it sounds evil but It's funny how he laughs at the idea of democracy. Oh yeah. I'm gonna be told. It's like true to Baez but it's also it's like not dissimilar like honestly from like what Glockta thinks to himself. Well he's like I don't know you are scary and evil but I don't super disagree with you. I do love that like I don't know there's a moment when Glockta like thinks to himself.  I mean he's like maybe the trick is wanting to die.   Too stubborn. I was sad about Frost and Severard. I was about to ask that too I was like that kind of like look he made me sad I was like because they were such a trio and getting to and like as far as it went they were good helpers until they you know turned on him. Seemed like Frost's turning was a little more malicious but but he also didn't seem like to have like Severard kind of had a good rapport with Guacta like he were kind of joking with each other all the time. Could really have a conversation with Frost. Yeah but then it was funny that I guess he had beautiful handwriting so he made me beautiful. I loved all the time so like every time Guacta was like torturing and questioning someone and you're like will you confess and they're like I didn't do anything he's like that's not what I asked. I was like I feel you so hard I'm always asking questions and people say something different and I'm like that's not what I asked. Guact is my spirit animal.  Yeah It's like one of my favorites like when he comes back from Gurkel is he from Gurkel? From Dagoska Dagoska when uh after he you know basically achieved the impossible and he's like so how did you get all this done? And it's like a whole paragraph of him being like I did this and I did this and I did this and out loud he's just like rising earlier. Yeah. I thought that was interesting how he even organized the rebellion and all that. Yeah like when the leader of the rebels has two colored eyes and you're like oh look. Oh that's right he did. Yep. And immediately as soon as Baesh he's like well I guess we'll just surrender then. Chazelle's like what?   He's like what I was trying to be heroic and he's like that's useless. You need to have a reputation for being heroic. Don't actually do anything heroic. Like what I was trying. There was something else like that. Oh like when Baesh kind of praises him for like putting people in their place until he starts doing it to Baesh and Baesh is like oh no no no you don't do it to me. And I did really love like in the middle when they were still on the quest that like Chazelle was like kind of coming around to Logan and like being like maybe he's not the useless lump that I thought he was.  Yeah like that moment because he hasn't I mean even though like you can tell he's kind of changed his mind about Logan he's never really come out and said anything positive about him until at the end when Logan says to me about him my horrible man and Chazelle's like you're the best man I know. And you're like oh sorry.  So are you excited to see all their children? Yeah I guess so yeah.  I was wondering um as a brother what you thought of West and Arty? Well I didn't spend too much time together. In the first book they did. Yeah. Because she was living with him. I don't know he was a protective guy until he became the threat. I don't know I just whenever there's a brother-sister relationship I can't help but think place myself more in that situation because it's one that I can identify with more than like say a sister-sister relationship I'm like I don't really know what it's like to have a sister. I can think of like I mean a close friend but it's not the same from a brother's perspective because like obviously I would be thinking more of Arty and like what if like I had a abusive father and like would I blame my brother if he didn't like do anything about it etc etc. I don't know if you were like putting yourself in West's shoes not so much I don't think you'd be like West although you can't be pretty furious well I don't think you'd beat me so I think it's bad oh yeah I did like when the Northmen started calling him furious yeah like sure yes yeah but in general like I love when the Northmen like first show up to like help out the union army and like they're like you guys picked the dumbest one of you to be the leader like I'm about that for this yeah all that bitching that Lattislad does like you're like you are so how could you be this useless in all this his pal just telling him to do oh yeah he's giving me a bad word you're like that's the way West that's what we have to do like we're charging in oh boy no show I love how West takes care of the two generals or whatever that are under him now and tells over and correct yeah when he tells them that he's siding with the other one hmm that was funny like I like enjoyed that a lot and Pike as a character when he shows up but like now you know it's kind of saved by the army but just enjoy even before that reveal makes the world feel a bit smaller than everyone's a friend of mine but I guess for that reason that also doesn't bother me when things are like quote-unquote left hanging because like then it doesn't it doesn't it isn't realistic for things always to be wrapped up so like the shanka or like yeah it concluded enough things to be satisfying but not like too many to where it's unbelievable thought it was weird that he was that West could choose him as such a ranked officer in times of war you know they weren't exactly checking doing background checks on anybody me just even west rising to power when he's like jazelle's king and i'm in power okay sure why not even like all the like threw out as after jazelle's king and you like when you like periodically see some character that knew him from before and they're like yeah no wonder he act who's better than us all along like ten times king but I do love the doddering kind of old fool that bias plays until he's very much not I thought it was funny in the first book how he wears the performance robes to forget to get people to believe him well like when they all of them they stop at the costume store and logan has to dress like a barbarian he's like what I think doesn't bias because like logan is super confused about everything and bias like tells the store owner he's like oh he's very method like he's a method actor he's like really trying to look apart I was like I was like there was one like I guess weakness I would say like I'm kind of surprised and I wish we had had a perspective from arty and it feels weird that we didn't yeah because she's like an equally main character I think ferro's the only female perspective yeah and like we see just as much of arty pretty much as we do of the others and you could say like oh it's because she's already in the situation with glockta but we had crossover with jazelle and logan and ferro all the same well did you find it I mean because like some books are like kind of you know harder like a harder writing style to like read and others are like really easy to just like keep reading like red rising you're knocked out in like one day uh you like texting me or like this is just a trilogy right because I stayed up till four reading red rising like I can't do this yeah that one kept me going so was this the kind of book where you felt like or these books were like where you like kept wanting to keep going it was easy to take a break I'd say but um I was also continuously interested to learn more it was pretty easy to read my mash who usually is that when there's a lot of descriptive stuff I kind of zone out and then have to reread a bunch of stuff but uh there's not like terribly much description yeah I agree but I'm saying that's not really an issue for this book so in fact one of the things he kind of does is like you don't really see anything described unless it's new to the character so like the first time the agriant is really described is when Logan comes there and he's like why is everything so big when he's like goes to the fountain and he doesn't know why there's a fountain I think that's when Giselle for a season he's like what is this idiot doing with the fountain he's like wow yeah I'd tend I'd start zoning out sometimes when perspective would shift to another character just because I kind of I get a little annoyed but it is ultimately good to get all the different perspectives right yeah outside but I just get interested and invested in one character and then something interesting happens oh now it's Faro time Faro time I feel like perspective shifts bothered me more and um a song about some fire than in these books yeah well there were I remember reading that and there were particular characters that I had very little interest yeah her all her stuff was completely unrelated to anything going on I guess later several books later it matters but at first in the blade itself that's kind of how I felt about Faro because she seemed the most disconnected from what was going on I felt like that about pretty much everyone at first but I guess more just because like I mean bias and Logan and everybody are together and I know kind of what they're going by yeah she was particularly but Faro you're like on the road some random person like how are you connected to any of this yeah because she was still kind of disconnected when the other started meeting yeah and like you weren't introduced her in the beginning like you were introduced to her right around the time everyone else starts kind of making sense and you're like who was this motherfucker why do I care just a bitch pretty like funny bitch yeah like why upon reread like doesn't bother you because you know where this is going but the later books when he writes it there is no like all first time through seems that way like he's nailed it where like first time through everything is like great or even because like even in it's not to say like oh well now everything's predictable it's like you still don't know where things are going but it's just structured in a way where you're not so like what was the point of any of that in fact best surf cold is probably the one that's the most tightly plotted because like it's mirrored after like a revenge thriller so like it's a tight plot we know what we're doing we're getting revenge I don't know it's the stand alone it's a stand alone so that you like you don't have three books to do this it's just the one and you know this plot you know whatever happens seven men must die and so we are going through it like we have a like that's the revenge like there there are seven people she holds responsible for like what she wants to revenge for and so like that's the plot is killing no it's a new character but this is the character that like I notice her being mentioned in the trilogy just because I've read best surf cold she's hard they mentioned but they called her the snake of talons so like yeah you wouldn't like unless you've read best surf cold you're like oh they're talking about Moscow Mercado and I think Koska mentions her Mercado because Koska knows her that's why he's in the next book so um she's so this is in talons which is where the queen is from yeah there's no map is there no there's no map yeah it's really I looked up uh it was probably fan made or something like but yeah so talons that's where queen teres is from you sure about that yeah do you pour so up talons oh you're right thank you but anyways so like that's basically the plot of best surf cold is that Moscow Mercado the snake of talons someone tries to kill her and she does kill her brother and so now she's needs to get revenge because she survives obviously so she's gets a crew together to try to kill the seven men she holds responsible for having done this that's about the length of last argument of peace you're in the middle of it no dad was reading it never finished who does that I know I was about to say you know how he is he just randomly stops and you'll ask him if he didn't like it he's like no I like this what you stop the new trilogy has Glocked his daughter and Giselle's son and the dog man's daughter Giselle's son with Tourette yeah is you have a romantic thing with you dad and then like I only just realized like I feel like a fake fan on this reread of the trilogy because one of the main characters so rika is the dog man's daughter and the person there's this older woman who's like kind of like helping her and like is around her is starting to fail and like she's like one of the main prominent characters so like I definitely knew the name was starting to fail but I never really noticed the one who keeps saying you're beloved of the moon crime chroma k chroma k yeah chroma k fail so it's starting his daughter the one with the axe who's like I'm your daughter she's this older woman yeah without seeing on paper the name didn't stick out to me so like I because that's like all she is in the trilogy she shows up she's like I'm your daughter he's like oh yeah of course you are and then like I've known her very well now as an adult as like an older woman who's in the new trilogy because she's always around and giving advice and she's always saying things about being beloved of the moon and I was like oh that was that thing from before I was like oh that's his daughter so it's a lot of little things like that we're like the big ones you obviously you know it's like obviously sitting down clocked to like no one is missing that but there's like a lot of little characters to kind of pop up and weave in and out of the books and you're like oh yes is that a very small world isn't it well I mean it's a you're gonna have follow someone in this world so you may as well follow follow someone you know they're bound to meet all of your friends well there's also like where there's I mean people congregate you come from a powerful family history repeats itself we learn that in Star Wars isn't it but also I mean like if you study like history it's always this powerful families in and out of power and always like intermarrying or like back stabbing each other sure excited to see Papa Glock to that can be playing catch with this um the daughter he won't be playing catch with the son either because I don't know how you think he's gonna be as a father do you think you'd like to have Glock to other father hell no why not he'd certainly be well protected he has a certain way of getting what he wants you think you'd torture you wouldn't put it past him come on as so many people kept telling Glock that he's got a heart he wouldn't do that I think I know better after reading his thoughts but he did let um yeah no he has a self fighter and it was funny when when he did that like god damn why did I do nothing did nothing good come from doing something nice why won't I learn anything yeah I was cringing when he first yeah made that decision that's bound to come back and it did I love that oh that was like the phrase that comes back for Glock to a lot too with body found floating by the docks and yet he's still alive like Logan would say well the more he said stuff like that the more I knew he's gonna be totally fine well he's far from fine even when we begin the book he's gonna be alive doesn't get much worse though just death and for him that would be a release oh I love that how he's like how do you think you can threaten me I love his little monologue about men and nipples and you're like hey you don't think about him you don't really need them but I promise you we'll be like I don't miss mine and I'll be purposely smiles at people when he wants to put them off I've seen the beginning of the first book so I don't know who to remember but I still love his little rhyme about porridge when he's like in a particularly feisty mood because he hates porridge but it's like all he can eat and he's like porridge and honey better than money everything's funny when you're porridge and honey even though like you're it's like the twisted version of marvel that like excitement you get when you're like captain america meets iron man like they're coming together it's like those moments throughout the books where like when you see like glockta meeting logan meeting like it's fun yeah that's how I look at them and also seeing them like because if you've been following glockta then like the first time then you see glockta through someone else's eyes because of their perspective and now telling you like when jazal sees me like who's this crippled old fuck like i don't want to get away from him meanwhile glockta's like jazal's so useless because i like that i probably was like that god i hate myself and do you love that little pep talk he gives jazal because he was like when uh marshal bruce wants like him to like pep jazal up to actually take the contest seriously and glockta has a little conversation with jazal jazal's like oh fuck and he's like you know i used to be like you but you know why don't you quit if you don't want to be doing this maybe not but i think shortly after that that he talks to west and finds out that west wants to spend all along you know it's very sad i mean it's up like happy also to find out that he was a good friend but also sagan you're just like oh i was all bitter at you but yeah we were my friend and i wish i'd known all this time my guess slightly west bitter guy and then i like that he kind of ended up useful he couldn't really have a friendship with west because he was leaving but he kind of got that friendship with arty then because she was like she'd always known him so she wasn't super put off by seeing him she's like whatever like i've seen worse she said she was uh she wanted him when she saw him in the contest right oh yeah well back when everyone wanted him i do like when she puts him like when he's like telling her off or sleeping with jazelle and she's like oh yeah i'm pretty sure you were betting all kinds of ladies back when he was like yeah yep you're not wrong i definitely was i was terrible i am the worst i'm out too and he's like when that idea that i feel like you see in more like noble types fantasy where they're like they'll never break because i'll never confess the whatever and he's like of course i've told him everything that i could possibly think of everyone does just make the pain stop so yeah i'm glad you liked it and you are gonna so i know you said you kind of wanted to reread the trilogy but do you so do you think after you've read everything that you're gonna want to reread it or sooner than that i wasn't sure if you would kind of immediately wanted to kind of like skim read to like check on some things that like were revealed i'll probably go on to the next stuff the next stuff i will say like the heroes was my least favorite but it is the most unique thing that he's written i think in so far as like most unique you'd get on me for that all right i can't because uh basically the heroes is just like several days of one battle told from multiple perspectives and that's it does the whole plot and i didn't like the battle scenes i feel like in general like i mean i think he writes them very well but just in general my capacity to pay attention to battle scenes is quite small so like he does a good job it's just like that's not my favorite i think uh other authors do battle scenes better but yeah it's definitely not a problem well i feel like battles are cooler visually like it's harder to picture it all when i'm reading it so like i have actually that problem with red rising a lot too there's a lot of space battles and i'm like i don't really know what's going on i know there's a lot of stuff happening not space battles in the first one well yeah it's all like medieval stuff yeah but there's a lot of space battles throughout the rest of the series and i'm always like i'm sure whatever you're doing is real impressive but i don't know what it is exactly yeah anyway so the hero's like i just say that because like the project of it i respect it and i think it's kind of in like what he's doing there like i see what he's doing and like as a as a writing project like it's cool to see him execute it but just as a story like because it literally is just several days about like i get that was the point of this but i'll tell him like what's the point of this like i know your books like tell me the result and it is good i was just like abacrombie books people already complained they're like where's any of this going what was the point of any of that and whenever the heroes will be able people literally though what was the point of any of that so just like i would still read it but like don't go and be ready for that so you're not going to take a break and read red rising you're just going to plow right through the world of the first love i figure i might as well while it's still let me know fresh in my mind i won't disagree do you think so i figure i need to reread red rising before i move on to the next one true true do you think you'll catch up by the time the new book comes out how many books do i have to read there's three stand-alounds then the short book that has the short stories in it and then the new trilogy has two out so like you said september five whole books and short stories yeah that's pretty doable i did three books in two months right yeah so we can buddy-read the wisdom of crowds what does the buddy read and then you can call on my channel and talk about wisdom of crowds and we can record a zooming call right you need to do a live show i don't know very comforted that much of this is likely to be cut yeah like two minutes i think maybe five maybe up to five i'm glad you're joking so thanks for coming on my channel thanks for having me i'm glad you're enjoying the first laugh i've been like genuinely so excited when you like texted about it and we're like he likes it he loves it yeah yeah i'm fucking love this book i'm always excited when someone else loves them what was dad's opinion he said he read them a while back yeah it's good it's good are we usual i really like them yeah and i'll even read half a best of cold so you ever been enthusiastic about it that was dad i think we've said nearly all of it can be said the first laugh so check back in when you're in town again and we can talk about the standalone and the new trilogy right right yeah let's see how well-received this video oh yeah and i gifted him the wolf so when he reads that you can come back on to talk about the wolf red rising and red rising anything else oh my gosh yes okay so he'll be back for sure this one this will definitely happen yeah can you say so all right well i think that does it so let me know in the comments down below what you think of the first laugh what you think forget to like and subscribe correct you want to do the outro no i don't don't don't do it for me but if you hit dislike i guess that means you hate him yeah please don't do that well let us know all the things if it's something horrible i'll pass it along but something nice i won't tell him i can't read the comments myself you can well he'll respond to your comments possibly if it's interesting enough so if you didn't reply it's because he thinks you're boring all right should we tell him we took a snack break do i have to introduce yourself oh we didn't tell anyone your name do you want to tell them your name or just want to be my brother i want to be your brother oh i'm your brother let's see if your viewers know i mean if i keep the clip in where you did that then they will definitely notice yeah assuming i'm assuming you're so far they're having any clips that i'm putting up so far it's been gold sure the battery's better right now oh good


Hello everybody. This talk is about how to design and implement a good TCP server with a tornado framework. So we're not going too deeply in the network programming here, but we more or less focus on how to use existing library. In this case, it's actually the tornado to achieve a scalable and high-performance TCP server. So my talk is divided into four parts. I will start with the design aspect, where we try to find out what we want to achieve, and discuss some techniques we should consider when we decide a server. Then we go through the system architecture and system flow. In the third part, we learn a bit about the implementation. I will try to introduce some tips and tips we use in the server, and the presentation and with the small demo of the instant messaging server. Okay. First part is the design aspect. But before we go on, I would like to give you some background information. There is quite a TCP-IP protocol. We all know that it's a connection-oriented protocol, which means connection needs to be established first until the application between two sides, finish sending the message. How about TCP server? TCP server actually is tied to a specific local port, and it starts listening to incoming connection. So when the client connects to the port, the server accepts a connection and waiting for the incoming data. Data usually comes in Cheng. It means the full logic package may not arrive at the same time. And the server may or may not respond to the client, and the client or the server can close the connection. Another thing I would like to discuss before we move on is the performance and scalability. When people talk about scale, they often talk about the performance. They are similar, but actually it's not the same. Performance refers to ability of a server to serve a mile of request or serve a mile of user. Meanwhile, the scalability refers to the characteristic of a system to increase the performance by adding more resources. Very often, people think that if we need to serve more people, we should add more servers. And I can give one example. For example, we have the Apache server, which can serve our, for example, it's 1,000 transactions per second. And if the transaction is short, for example, one second per transaction. So we have around 1,000 scalability connection. So for this one, the Apache server handles quite well. But if the connection is set longer, like 10 seconds per transaction. So for one TPS, we have around 10,000 concurrent connections. At the time of the Apache server, the performance drops a lot. Okay, let's say you upgrade the hardware to make it double the processor speed. What happens? We get the double performance at the beginning, but it still kind of serve 10,000 concurrent connections. Okay, let's continue doubling it. Okay, we have 8 times performance, 16 times performance. It's great, but it still kind of got 10,000 concurrent connections. So performance is not the same as scalability. Okay, so right, let's move to the desired target. What do we want from our TCP server? I pick up the most important point here. We want it's a high performance, but we also want it's scalable. And it must be stable and robust. More than that, it must be very easy for developers to add their business logic. Okay, so we want a scalable server. But how? The example about the Apache server is actually known as a C10K problem. A decade engineer tech go with how to handle more than 10,000 concurrent connection. That's great solution for that. When you have more connection, it means the kernel needs to work through the larger list of the socket or the thread. And actually, this day, the kernel is much better. It can provide lookup in constant time. Another problem here is the thread scaling, still cannot scale. In Apache, for each time there's connection, it creates a new thread. But in the modern server like ancientX or Node.jf, the server scale using the event ribbon IO. It is a asynchronous programming model. Okay, please just mention about an asynchronous programming model. So what's the difference with the traditional way? So for the synchronous operation, it blocks the operation until the operation complete.  Meanwhile, you can keep going on other stuff because the IO operation don't block, so you don't need to have spawned a lot of threads or each connection one thread. Okay, but the asynchronous come with a disadvantage. It's not really easy to implement or it's not easy to read the code. Error handling is much more complicated and the response time are unpredictable. Well, so to scale up, we use a synchronous programming model. So what's the option out there? I can name the most three popular network library in Python we have. This is the tornado, Given, and Twisted. Tornado is the first candidate and actually this is the one we choose for our TCP server. Tornado has become very popular among Python and synchronous library. Actually, there's a by-con talk about a tornado IO loop. You can take your time and watch it in detail. In this slide, I just summarized some key points here. Tornado is claimed as a great framework if you need to handle a large number of connections and it can scale up to 10,000 open connections, ideal for application that requires a long live connection. And it's very simple, easy to use, good documentation. The code is very beauty and clean. And it has a lot of library support. It can work with built Python compiler. It's pipeline. It's so good, but there's many other Python libraries out there. So why tornado is better? Let's make some comparison. For example, we come back with Twisted. It's actually also a very good candidate. It's actually very similar to tornado. It's both used the coreback style and have built-in, which is a pure Python event loop powered by Epo in the Unix. But the only problem is it seems much more complicated than tornado. And it's not only offered the coreback, but it's offered a defer, which I think is the same way as the go-to in C. You have a lot of problems when you do programming or testing. And when other programmers read your code, actually they just want to kill you because it's very complicated. Another is Given. Given is actually the very new library. This is a core-routine-based Python networking library. That's you read it to provide a high-level synchronous API on the top of the event loop. So basically it's just like object the coreback. It helps you to write the synchronous code and still get the good performance, still get the good scalability. However, we got quite a number of troubles with the Given because not many libraries compatible with the Given. And that's it. And it's tied to the C Python implementation, not support order like PyPyJetern. Well, so let's look back to our desired target. So to make our servers scalable, what we try to do is we will use the tornado for the network component. And to get a high performance, the idea here is we just try to guarantee that we collect the tasks assigned to multiple threads or recessed. The problem is the asynchronous, as I mentioned, it makes your course complicated. So to make sure it's stable and robust, or it's easy to use or add the business logic, what we do is we try to file the way that makes our file the way to let the developer to write the business logic in the synchronous code. Okay, so to make you more excited, so at the end of the presentation, what I can show you is you can wish our TCP server, you can implement a simple instant messaging server with only just 100 live code. And the code is actually written in synchronous mode. How about the performance? For example, you have a server with 2GB memory. Actually, it's heavily 1GB available. And to call a processor, it can support, it's easy support like 100K connection and 1000TPS just in a second. Okay, so from the desired target and some basic techniques I just show you. This leads me to my next point is the system architecture. This is architecture. There's two main modules here. The very first one is the network one. The network component, this network component is run in a single process and contain two servers listening at different port. The first one is connection server. What is the, first is the non-blocking single thread tornado socket listener. It's listened and accept the client connection. And if we see the request package, it adds into the waiting task queue. Another is a worker server. Again, it's a tornado socket listener and it's maintained the list. It's waiting for a list of the worker processor. The task is pick up the task people in the waiting task and assign to own the worker. The second modules in this architecture is the own the worker processor here. Its worker processor is the TCP client. It can be thread or process and it can be in the same or different machine with the network component. It's connect to the worker server or to get the request. After it's processing the request, it can send back the request data back to the network modules. And the next module will try to send back the data to client. So the main idea here is we try to use the network modules as a asynchronous to efficiency control the client connection. And we try to convert asynchronous code, become the signal through the worker processor to get high performance. Okay, so to give you a better understanding about the architecture, let's go through the basic flow. So firstly, each processor will connect to the worker server. And when the processor worker coming up, of course, there's no task at the beginning. So it's add to the idle worker list. And when the client made the connection to connection server, the network modules will generate a very unique key based on the client IP, client port, and the patting number. And it keeps the mapping in the dictionary to easy to query which client need to send back the data later. Okay, when client send the package to the connection server, the connection server will modify the package. It's add in the command and the client IP client ID before forwarding the package to the worker processor. So here we have three main tie up commands. The first one is the command connect. This will when the client made the connection, the module, the network module will auto generate the connect package, which is useful. For example, you want to initialize some section data for a new connection. Similar way for the command disconnect, when the client connection disconnects, it will tell the worker server so it can clear up the section data. For normal package from the client, the command should be command relay. After the package is received and added, it can either add to the waiting task if there's no available worker processor or it will directly pass to the one of the worker processor to handle. So after the worker processor finished processing the request, it will send back the data to worker server. So based on the client ID in the package, the network module can file out the corresponding client connection and return back the data to the client. One notice here is we have two tie up commands when the worker processor send back the data. Command notify. Command notify means I still processing the data, but I need to notify another guy. So the worker is not free. Yes, it's just like midway processing data. Or if it's finished the request, it can use the command relay. So if you set the network module, it can send back the data and also add the worker to the IDOL worker list so later it can get a new task. So the network modules and the worker processor can run in the same machine. But we also can make it the cluster. This means we can deploy a multiple machine, run the worker processor. Most of the time we just need one network module because the tornado is very powerful library. It can easily handle 10,000 open connection. So in this picture I just suggest one of the cluster we have. Like we have two network module and a few machine for the worker processor. Okay. Okay, so we get our architecture. So let's move on to the next point is the implementation. Firstly, we talk about a network module. As I mentioned, the network module use the tornado. And we all know that tornado is asynchronous library. So the question is, will it be very complicated to write out the network modules? Because I just tell us the asynchronous is not easy to implement. Actually it's super easy if you don't have the core back inside the core back. And yeah, it's very straightforward to write out the network modules in our TCP server because we just need to fill up some event. For example, when the client make connection, we create a connection package sent to worker server. Or when the client close connection, what we need to do or when a client when we receive a package from client, what we need to do. Okay, so another point I would like to highlight is the some restriction in CPython. In CPython, we have something called global interpreter log or GIL. It's actually the mutex that revents maintenance threats for executing the Python code S1. Note that the potential blocking like IO blocking or image processing will not occupy your GIL. It's only the CPU bound. So if your threat, for example, threat 1, it requires a high CPU and it will not release the GIL. So the threat 2 cannot acquire the GIL. So actually it's learned in the single process. So that's the idea. You may have to implement the worker as a monthly threat if your task requires a CPU bound. Another thing in the implementation I want to highlight is the partial data transmission. At the beginning, as I mentioned at the TCP connection, the full logic package may not arrive at the same time. And the technique most frequently used is you add in the header. It is created as in the 4-by integer at the beginning of the package to indicate the side of the whole package. So what you do is at the beginning, you just create the first 4-by to know the full side of the package and you try to get the full package before passing into the higher layer. Okay, beside partial data transmission, there's some tips I want to share is if on the worker processor or network module run in the same machine, you may not need to use the TCP IB socket. You can use Unix socket, which is much lighter and faster. Why? Because the Unix domain socket is not as you execute in the same machine. So this can avoid some checking or operation like routing the package. Another highlight here is the keep-alike. Keep-alike is useful when you need to advise when the peer dies before it can notify you. Of course, most of the time you want to set the keep-alike, but the key point here you need to mind about the option we have. Of course, you don't want to get notified when the peer already connects for one or two hours or you don't want to set the interval is so short so you get a lot of traffic, redundant traffic. So just feels like I mentioned about the network modules. So now we move a bigger picture. Let's talk about how the message transmission between the client and the worker processor. Okay, each package from the client has this format. This is the size of the package, the size of the header, the header buffer and the body. The package size is to solve a problem with the partial data transmission, which I just mentioned. The size of the header tells you the header size and what you need to do is you deserialize the header and the header structure we have here is contained in a few attributes. It is the ID, version, command, result and timestamp. In here the most important one is the command because based on the command you will know which structure to deserialize the body. For example, if the command is the login command, so you just use the login structure to deserialize the body package. Or it's a chatting structure or it's an update structure. Okay, so for each worker processor, each will have something called worker-recessor-manager-class. What is the... it's maintained a dictionary of the work of the processor handler. And each processor handler needs to be registered its action and request structure and reply structure. So when the package comes in, the worker-recessor-manager first it will read the header in the client package, get the command. And based on the command it will find a corresponding handler. And because inside the handler you know what is the request structure and reply structure. It can deserialize the body and pass back to the function. So it will process the data and it gets back the result. After that the worker-manager can construct a relay package and return back to client. So what is the nice thing here is after you have the worker-recessor-manager on all the worker you can return code in the synchronous mode. Here's one example. Like if you want to write a login handler, the easy way is just register the function with the command login with the processor-manager indicate that the come-in structure is locked in request and the return package is locked in reply. And inside here you can write a synchronous code. Okay, okay, well finally we get here for a demo. So for this demo I would like to show you a very simple instant messaging server. The client can can can register his username and can send the message to another username. And through this demo what I want I would like to show you is you can see how easy we can use our TCB server to write out a business logic and we also get a very good performance. Okay, let's see for a demo. Let's see. First I'll bring up my server here. Okay, maybe now I move on. Maybe I should change this to WDK. Let me make it WDK display to make it easier. Okay, okay, we have one server here. This is not really a power server. It just has two cores and one one gigabyte RAM available. And okay, this is our folder structure for the instant message server. Maybe we use VIM to easy to see. So you can see this on the left hand side. We have GTCP, this folder contains all the core library files, which is the network modules I just showed you. And all the IAM server structure here, we have a config file, which is you set like listen at which part and worker listen at which part and you set some config like some keep a live option, time out, counting. Okay, you also, okay, for the CLI protocol, we use the Google Protobuf. So in here you define what's the command from the client. It's a command list. You define a result constant. And here's the package header I explained inside the slide. And for example, for user register, this is the structure of the request package. The client need to send the username for the message sending is how how the package look like. You can indicate the list of a target and the message. When the server receives the message, it will file out the receiver and forward the package to receiver and this structure for receiver package. All the logic actually is just in two functions here. Okay, user when it register is how you write out a code. It's very simple. It's just a synchronous code here. You just add into the memcast, remember the username and mapping with the client connection. And here's how you send the message. Okay, well, let's look back to the demo. Okay, first let's do some stress. Let's add more pressure on the server. Maybe mess a few thousand connections. Maybe I have 10 threads, each thread 1000. 10 threads each thread. We try to this thread. We try to make 1000 connections. Okay. Okay, the CPU is high. Let's see how many connections we have. Let's start. The server isn't a port 1.8.0. Okay, we have 10,000 connections here. So the server have 10,000 connections. You see it's not big problem on the server right now. Let's try to bring the client back. Point 2, I bring one client. I register username like P1. Okay, the server return okay you register successfully. I bring another client. Maybe I register with P2. Okay, let's try to send a message to P1. Yeah, the P1 can receive. Okay, let's do more stress on the server. Now server have 10,000 concurrent connection. Everything is still okay. Let's try. Okay, in this testing we try to have a few sender and try to send as much as possible message to a server and we have one receiver to see how many packets the server can handle. Maybe we have 10 sender. It sender send 600. Okay, it successfully register. Let's wait for while to see. Okay, we can handle around 500 messages a second in the receiver. And let's look the server. Okay, the CPU is just slightly higher. It's still very good. Okay, the connection still, we still can maintain 10,000. Actually, it can maintain up to 100k. And if we use like the lighter command of internet work, we can get around 1,000 TBS. Okay, so that's bring me to the end of my presentation. Thanks. So I open for any questions? No question. So if you have further questions, you can send me an email. Yeah, or you can check out the demo code in my Github. Let's show here. Okay, thanks.


You guys know we cover a lot of leaks and rumors at the channel, and there are times that these leaks are absolutely true even over on places like 4chan, but it's hard to know what's real and what's not. And the story we have for you today is so unbelievable that it actually takes a common meme and makes it reality folks. Your uncle worked at Nintendo, your dad worked at Nintendo, remember we always have those jokes out there but well my uncle works at Nintendo, my dad worked, you know a lot of fake leakers out there over the past few decades I always claim my uncle my dad and oftentimes we just take it as a joke that a family member works at Nintendo and they told me a blah blah blah blah blah you know my dad is Doug Bowser and well how about a story of an actual Nintendo leak where this was true, dug up by did you know gaming. I can't believe we're going over this we're going to use Nintendo life's breakdown of the story here. As you're seeing fighters from Smash Bros. for 3DS were leaked by a former Nintendo of America's employees child. Spoiler warning, that employee was fired. Let's get into how this happened. So in August of 2014 photos and videos of Super Smash Bros. for 3DS were leaked online demonstrating evidence of unannounced fighters. The leaks were seemingly confirmed following a copyright strike from Nintendo of America before being proven irrefutably real upon the game's eventual release later that year. Since then the origins of the leaks have remained shrouded in mystery but thanks to some diligent digging from did you know gaming's Liam Robertson we now have a better idea of what happened. According to Robertson the leaked footage was captured by an employee of Nintendo of America for analysis by the entertainment software ratings board. The footage didn't come from the ESRB itself thanks to the stringent security measures taken by the firm but rather by the Nintendo of America employees child. The details of how the child gained access to the footage remain unclear but a former Nintendo of America staff member believes that Nintendo's intranet service may have been accessed by the individual using a device belonging to their parent. Although the original leaker had then intended to keep the photos and footage within an exclusive tight-knit group of online friends word spread and it eventually wound up being posted to the image board website for Chan. Naturally Nintendo of America was able to trace the leak back to its origins and the employee was promptly fired. We'll have a link down to that article and the actual video from did you know gaming that goes over a bunch of gaming leak history facts and stuff. Guys this is a little insane to me. For all the times we've actually made this joke it's so weird that it was actually true in the case of those 2014 Smash leaks and you guys might not even remember what those leaks were.  I try to keep everything on lockdown and multiple passwords and all of this stuff but children are clever. They're very clever and if they know their dad happens to work at a job that has information that they want maybe they're going to be checking out their dad stuff more often than maybe even the father realizes. I'm assuming the father was able to land on his feet and get a job somewhere else because he didn't leak in a purpose it was his child and yada yada and well Nintendo America took the steps it did to prevent other leaks it is unfortunate but man I never thought an actual story of my dad works at Nintendo would actually be a real story so thank you so much to Liam Robertson and you know the gaming history people over there at digital gaming for this just this fascinating tidbit I wanted to share with you guys today thank you guys so much for being here I'm actually working on a website for you guys Nintendo Prime.net where we're going to have our stories news and stuff going up over there some stuff we cover on our channel some stuff we don't this story is going to be over there just for your guys's reference and perusal if you want it's still being built so you might go there and see some stuff and some weird wonky things going on we're working on the website hopefully we'll have it done before Christmas well we'll see what happens all right guys thank you for being here we'll catch you in the next video