Welcome to our video on how to manually configure BMC client management and track it. Today we will cover how to integrate track it with BMC client management if you have already been using BMC client management software in your environment. We will also talk about some of the training videos and links that you can look into for more information related to track it 2018. So let's get started. To get started here let's talk about setting up BMC client management. BMC client management or BCM is an advanced system management software that provides a reliable way to discover, manage and audit all assets on your network. To discover and manage assets and track it you must configure BMC client management master server. You may choose to automatically install and configure BMC client management while installing track it or you may manually configure it after installing track it. To establish a connection between track it and BMC client management ensure that a master server is configured. To generate consolidated track it reports that include both track it and BMC client management details and ensure that the BMC client management database credentials are configured. So in order to integrate track it with BCM client management server you must come into the configuration menu over here and select asset management. In asset management you need to select BCM client management configurations. As you can see by default these configurations are blank because you have chosen not to install BCM client management during the installation of track it 2018. So let's proceed and establish or integrate track it with BCM client management. In order to do so you must run a custom utility to import the other box settings from BCM client management to track it. The custom utility is included in the tools folder with the other track utilities. This utility configures BMC client management that can be used with track it. This utility is active only after the BCM client management is successfully installed. The utility will work while invoking a BMC client management API. Hence you must ensure that the BMC client management rest API endpoints are up and running. So let's go ahead and invoke the utility. In order to invoke the utility you must open a command prompt as an administrator. Then navigate to the path where the utility is located. Then invoke the utility. This utility requires three parameters. First is the BCM server hostname followed by the BCM port which is 1611 followed by the password for the BCM administrator account. As you can see the import run successful. Hence we have run the utility successfully. Next come back to the BCM client management configuration in track it and start configuring your configurations here. Enter your BCM client management server name. Enter the HTTP port that connects to the BCM client management server. The default port number is 1611. Next use SSL to ensure secure connection between track it and BCM client management. Next enter the BCM client management administrator username. Next enter the administrator password. Test the connection. Next enter the BCM client management database server name. Next enter the BCM database name. Next enter the BCM db username and the password for that BCM db user. Test the connection. The connection was successful. Go ahead and save the configurations. As you can see configurations are now valid and this node has turned green. After you have set up your BCM client management with track it configure the asset management module configurations. So for documentation and resource related to track it visit docs.bmc.com. If you forget this link click on the help menu within track it and it will take you to the same website. If you're new to track it visit track it community to talk to other track it community users or even talk about our new product. Technical support related questions or issues visit support.trackit.com. For renewals and additional licenses you can visit www.trackit.com. I hope this video was helpful. Thank you for watching.


Hello, did you see this here senior handler at the internet dom center? This video for the analysis of obfuscated VBS is based on this diary entry that I made. So I have a sample that I got from Malware Bazaar and I'm going to analyze this with Cybershift. Now here you can load the file but then you need to have the file on your disk and I don't like that especially on Windows machines. So I have the sample here in a password protected zip file as I obtained it from Malware Bazaar. Here it is and I can say option X uppercase X and this will dump all of the files in the zip file as an hexadecimal dump. And since there is only one file, there you have it. So what I can do now is say clip. This will copy the hexadecimal dump to the clipboard and then I can paste it into Cybershift and then I can say from hex to do the decoding like this and then now here I have the file here as output in Cybershift without having to have that file on my disk not contained in a zip file with a password. Okay so and now I can start the analysis. So I'm first going to run magic on it to identify the file and it's a text file. UTF-16 little engine. So the FFFE that you see here is a byte order mark and FFFE means little engine. Okay so let's do that away and then we can decode this. So decode text, decode this as UTF-16 little engine. So and we see a lot of colons and one and two. And if we go through here, it seems that it's only this. So let's just filter these out and see what we remain with. So filter, carriage turn line feed is a delimiter here because it's a Windows file. So start of the line colon and of the line so now we have selected only these with a single colon invert and now we have the rest that remains. So we can do that again, carriage return start colon colon and of the line invert selection okay and now we end up here with a couple of lines of VBS. So with a dim statement that's on something you find in visual basic. So that's a good keyword to say okay this is visual basic. And here you also have an execute statement execute. It's a statement that you have in VBS and visual basic scripting. It's not available in VBA and visual basic for automation. So this is a VBS file. You can see here several replaces so lots of non-printable characters here well non-ASCII characters replaced by an I, an S, an U, an R, an E, a U and so on. And then we have this here okay and these two characters here appear also here. And so you have this and this so this looks like a replace an obfuscated replace and it's very likely this because here you can see PLAC and here you can see an R. So this string as probably has to be replaced by an E. So let's just do that. Let's just replace do a search and replace for this and replace it with A. Let me copy this so search no find and replace find replace okay. So we just find a simple string search for a simple string this one here and we replace this with a letter A okay. And now we start to see something that looks a lot like base 64 but reversed at the equal equal here is at the beginning and not at the end. And then you also have this here some other variables that are concatenated. But here this also looks again like a search and replace because you have the variable here then these three variables and as that what I'm going to do is just try this here and do another find and replace so simple string and replace this with Z okay. So this indeed looks like reverse base 64 so let's extract this first time going to filter only for this line let's just take this here part of the line and say filter so then I only want to select this here so between the double quotes and I'm going to use a regular expression for that. So a regular expression I'm much double quote and then in a capture group any sequence close the capture group and here double quote you see that it is selected now and I'm going to say list capture groups okay and here we have the reversed base 64 here so let's reverse this like so base 64 decoding okay and now we end up with something that is typical here for PowerShell and this is UTF-16 so decode text UTF-16 little engine and here we have our PowerShell script with URL and here another reversed URL.


and church. Nice to see you out here. We're gonna play some standards and an original or two and glad to be here. I'm gonna keep looking at my phone. I promise I'm not like checking Facebook or something. I have a song list. That's what I'm doing. Keep looking at this phone. It's really rude. CDs that I have for sale. Although there's only one. So there's one of those and to take credit. And what's his? Flonious Monk actually wrote that one. But Miles, I think I'm not sure if actually on the album liner notes it says Miles Davis or Bill Evans for that one that we just played. But Bill actually composed it. And you can hear it. It's his type of Russianistic. So again that's blue and green. We're going to continue with an original of mine that's on the second volume of the CD that's available. This is called Everything on it. Connor and I are so we get to play often in the house. We've got a piano. It's not like this, but we have a piano. Yeah, we haven't recorded an album yet. That's just the next thing. We just, the three of us need to record for a project. Again next year with record. I'll have my dad come and record the thing for us. It'll be fun. It sounds good in here. It's a little live, but y'all at the end here helped soak up the sound. So thank you. His hands and feet are doing some pretty fascinating things. Anyway, we're going to continue with the tune actually written by the same team that wrote I think the second tune we played. I'll remember April, Paul and Don Ray, Posers. But this is called You Don't Know What. I'm going to continue recordings that the judges check out kind of a blind judging.  Please stick around and say hi. Have some refreshments. And thank you all so much again for coming out. It's really, you have, you're exuding impeccable musical taste. We really appreciate you for that. Please give it up for my longtime friend and one of my favorite drummers on the planet. Connor House is also one of my favorite musicians on the planet and a wonderful host. He's been putting us up in Waitsfield for the past four nights. He cooked us an amazing meal and he's everyone here's friend Anthony Santor. Everyone here for having us. Please also just a warm round of applause for Kerry Bennett for bringing us here. Thank you so much. And also to Ginny Roth. Ginny, where are you? Please give her and the Warren Art, there she is. And the Warren Arts Committee. Thank you for having us through with your sponsorship. So one more here. Here's a Charles Mingus tune. Actually now that I think about it, the last time, oh no, second to last time I played this piano was when it was at the Bundy. We did a tribute to Charles Mingus and finish the night with. So hope you enjoy. Better get hit in your soul. For the church service Sunday morning with my dear friend Taryn Noel, she'll be singing. I'll be accompanying the choir and playing a couple solo pieces. So come back for the service August 4th. Thanks again.


Hollywood, make-of, make-believe, land of broken promises, lotus land, Cinderella City, Tinseltown, Hollywood, Hollywood weaver of fantasy, to the dream factory hub of the entertainment universe. Hollywood, the lieu of young hopefuls from town and village, factory and farm, all seeking the pot of gold at the end of the rainbow. Some, the dream is realized, for others their hopes and aspirations are shattered on the shoals of despair, but still they come. Behold them, dewy-eyed, innocent, vulnerable, a flood of femininity, a deluge of daintiness. Will they soar to stardom find a permanent niche in the Hollywood heaven? Or like the moth and the flame plunge like a meteor into the abyss of oblivion? What does fate hold in store for them? What is their destiny? Better seek the answer through the eyes of one of these young hopefuls as we follow her quest of the impossible dream. A young hopeful, like Mooch. Mooch is here, watch out Hollywood, la-da-dee. Mooch has come here to stay. This town won't be the same again, succeed. Mooch will stay. She's a whole best of class, no pedigree. Mooch has a dream before she's due. Mooch is here, Mooch is here. Mooch darling, this is Zha-Zha. I can see you're new in this city so let me give you some advice. If you want to make a career for yourself in Hollywood, I will tell you what not to do, what to do, and when to do it. This is no good for you. Keep your fur on, Mooch.  And now you have come to what is really class. Look down at the famous names written here in cement. They will last forever. In the old days they had the great premieres. It was exciting. All the stars getting out of their limousines, walking on the red carpet to the microphone. It's a marvelous picture, simply marvelous. It's a marvelous picture. Mooch, that is a good luck statue. Why don't you make a wish? I know this producer, he's holding a story conference. One has like nothing to do with it, you know. Act and don't even matter. It's who you know in this town. It's who you've seen with it, Count. Who you've seen with it, Count. Don't take her advice. It's not who you are seen with. It's who you are marrying. That's what counts. To make a career darling, you must go where the producers, directors and the moneymen are. Like there. Good girl. Mooch, you're wasting your time. Get into the brown derby. And be discouraged. Try the back door. You do like the script, right? As I told you, I like everything about the script except the end. Look, look, darling, there is someone to be seen with. It's Vincent Price. It's really Vincent Price. Hunt him. Try tantalizing. Arthur, does all my talking for me, Sam? Be sexy. Fabulous. Here you are, Mel. Thank you. Kiss his ear. See, darling, it's always works. Now that we've been formally introduced, Shaggy, you might as well sit up front with me. Congratulations. You've made it. Oh, I'm afraid he's broke. Look at his car. Poor Vince. He's starting to invest money in you already. Let's face it, every girl needs a little fixing up before she becomes a star. And darling, you need your teeth capped desperately. Hello, I'm Mr. Price. This is Shaggy. Is Dr. Hackett free? Yes, Mr. Price. If you will just be seated, I'll tell him you're here. Thank you. Mr. Price is here. I'm right with you. It is, as I suspected. The canary has an ulcer. Well, Doctor, I was having lunch at the derby and he went, somehow or other, this kooky little mutt. Nurse, prepare the patient for examination. You know, I don't know how, but, well, she got into the car and in a second or so, she was sitting right in the front seat next to me. Name the patient, please. Well, I call her Shaggy. Next to Ken? Well, I guess it's me. You got papers on this dog? Oh, no. No, as I said, I was just leaving the derby when she turned up. This could get you in a lot of trouble.  Look, Doctor, the reason I brought her here is that, well, I have a kid who's writing me a lot of fan letters and he is just dying to have a dog. I was reading in the medical journal about a case similar to this.  Is that how the canary got an ulcer? Huh? Look, Doctor, all I want you to do is just examine her and make sure that she's all right. And I'll send the boy around to pick her up in the morning. Oh, it's all right, honey. It's all right. You're going to have a good home. Look, I'll come and visit you. Now, how's that? Oh, now take it easy, sweetheart. Take it easy. I love you, but I can't keep you. No, no, no, you be a good girl and I'll come see you real soon. Bye, my sweetheart. Nurse, give me a hand there. That's a man for you, darling. One moment of promises, ecstasy, then thrown away like a broken toy. And be sad. I stay with you. Of somebody, sometimes.  It's the famous Playboy Club. I can tell you a lot of young girls have been discovered here, even for pictures. But that's a bunny. Go in, go in, Mooch. What have you got to lose? Perhaps you change your type and you have been rejected. It's good for the morale. Darling, stay rejected. I must tell you the terrible news. There are very few parts for a four-legged stripper. Keep it on, keep it on. Now we are getting lucky again. There's a handsome one for you. It's James Darren. It's really James Darren. I think I know what type he falls for. Nothing sexy. Be sweet, demure. Look what happened to Grace Kelly. She got herself a prince. Better go back to be sexy. Must get his attention. Mooch, I couldn't have sort of it myself. Hey, what happened to you? Oh, you weren't hit. You're just scared. That's all. That's a good girl. Hey, is this dog belong to anybody here? No tags. Looks like you don't belong to anybody, do you? Huh? Let's see if you can stand up. You want to try that? Come on, sweetheart. That's a good girl. You know what, sunshine? I was just about to hit for the beach. You feel like going for a ride? Compromise him. You'll never get out of this. Hey, would you guys keep an eye on this dog for me? You'll be a good girl here. I'll be right back. He'll be back. Make yourself beautiful. Get a nice tan. You see, blondes have all the fun. Deuces all along this beach. Discovered here already this summer. Here is an opportunity. Go with them. Wiggle like they are wiggling. You wouldn't want to make it in Hollywood like that anyway. I bet he doesn't have enough money to buy your hot dog. You're wasting your time.  How darling you're hopeless. Hey, sunshine, did you miss me? If you take those off, we'll go for a little walk along the beach. I know you've been here once before, but that's our little secret. Don't fight it. Be casual. When you're in the waiting room, flirt, flirt. Be nice to nurses. And if the doctor says he knows you, give him a cold nose. Hey, Mr. Darren, is Dr. Hackett in? Oh, yes, Mr. Darren. If you'll please be seated, I'll tell the doctor you're here. He hate my gloves. That she'll be back on her perch. Dr. Hackett, Mr. Darren. I found this dog this morning while I was down at the garage and she just kind of attached herself. Nurse, prepare the patient for examination. She's a great dog. You know, I took her down to the beach and we spent the whole day together. Your name, a patient, please? Oh, sunshine. Next to Ken? Well, I guess me. I've seen this dog someplace before. I'll never forget a muzzle. Dog I'm referring to was brought in yesterday. Very sullen beast, morose, neurotic. Oh, no, that couldn't be sunshine. She's one of the happiest dogs I've ever seen. She looks pretty familiar to me. Of course, I wouldn't testify to it under oath. I remember a classmate made that mistake. Very famous case involving two St. Bernard's, even the casks were identical. Picked the wrong one and in his career took to drink horrible. Look, I was wondering, Doc, could I leave the dog here for a couple of weeks? You do take borders, don't you? No, yes, we have excellent facilities around the clock care. Nurse sent for the attendant. Yes, sir. Hey, hey, sweetheart, don't take it so hard. Listen, hey, I'll be back in a couple of weeks. Take this patient to wing five, please. Yes, sir. You'll be a good girl, you hear? And I'll be back to get you just as soon as I'm through with the picture. All right? Take care, Doc. Thank you very much. That's a pleasure. All right. Moch, I had no idea he would leave you here. This is terrible. It's like the last mile. Me, an old man, don't give up, Moch. The world really will be yours, darling, if you can just get into that studio. This is where you really belong. I'm posed by the village square. Yes, sir's coming to dinner. Stressing room. And that's really Jill St. John. She advises you listen. But remember, she's also a woman. I knew our competition. Little Doc, what are you doing in here? Come on, out. Don't send her away. Now you stay right where you are, Princess. You know, Mr. Alvage, you mustn't be too hasty about these things. She could be a contract player. They're always discovering new talent, you know. Are you talented, darling? Well, she is. What did I tell you? She's probably even got her own series. Really? I'll only be a few minutes, darling, and then you can have the chair. Really? Don't think it's presumptuous of me, darling, but I think since you're new to the business, I should give you a little advice. Let's see your profile. Other side. That's it. That is your good side. Remind the cameraman. And be sure to tell him no close-ups after four o'clock. Really? Oh, and the eyes. The eyes mirror the emotions. Now, I know you have a great inner depth, but the audience doesn't. Now I suggest shading the lids with blue liner. Right, Mr. Alvage? Oh, really? Miss St. John, ready on the set? You'll have to excuse me, Princess. I'm due back on the set, but we'll continue this fascinating conversation some other time. Cocktails, call me. Good luck with your series, dear. Come and they go. I'd use a shampoo. Beautiful. If I do say so myself. Diamond smooch at last.  Yes, it's Jim Barker's by George. It's Jim Barker's. Welcome to San... Oh, guss it up, too. Anybody own this dog? Well, you just wandered in. Is that it? Hey, I'm doing a guest shot, and we need a dog that looks just like you. Would you like to be on television, honey, huh? Would you? Well, now, you're in show business. A star might break a leg. We'll dance our way into their hearts. You're number one. You're top dog now. Lap it on up now. It was your style that drove them wild. Darling, you made it. It's fantastic. In such a short time, look at the career you made. The Beaver Clinic. This haunted mob. This is Mrs. Magoo. This is Magoo. Oh, she's darling. You know the TV special I'm doing with the DOG? I want to show her to the producer. A great idea. You know, the casting office is right inside. And as for you, I get 10% of the bones. Here he is. Well, Jim, at this party, you're really putting on the dog. Oh, Davey, you can do better than that. See, I told you they were all here.  Yes, but not alone. She's adorable. So are you, Cathy. Oh, yeah. I want you to say hello to Mrs. Magoo. Hey, Rosie. How are you? Meet Mrs. Magoo. Then here, have a potato chip. Oh, come on. Forget it. Know that TV special we're going to do it again? For the comedy spot, huh? Hey, she got any talent? Any talent? Watch her. Little audition, baby. There you go. She's terrific. You know something? That dog will go far. Don't forget. I'm her agent. Hey, Perry. Remember, remember, it's who you're seeing with that car. I think a cigar would look better in his face, don't you see? It would go with it. Great deal like you, then. Oh, it does. It does, doesn't it? It does. Well, look at her. A little push down here. She says, are you interested in R2? Well, hello there. How are you? Isn't she beautiful? I adore him. Look at that long eye. Hey, incidentally, never mind her. Yeah? Welcome back to Hollywood. Thank you. Say good night, Vincent. Good night, Vincent. Didn't I meet you in a beauty parlor? The world is yours. This is what I had in mind for you all the time. Fame. They recognize you all is lost. It's Shaggy. Hey, that's Sunshine. They will know you're only a mutt. Shaggy. Hi, Vincent. That's Sunshine. Oh, little princess. I know it's Mrs. Magoo. Sir, she fooled me. That's how I never forget a muzzle. And look at that little girl. She rode all the way outside that boulevard. Hey, there she is. Hey, belong. And I can see her. That's the dog I found at the bar. She fooled me. Okay, I thought you were us. Come so close to the impossible dream. Don't give up. Let's make one more try. I know this is not why you came to Hollywood. But, darling, don't be sad. Sure, business isn't everything. And this will last much longer. This is Richard Burton saying, farewell, mooch, wherever you are.


Welcome. This is Geology of the National Parks, G-side 10. My name is Shridhar Anandakrishnan. I'm going to be your guide through abduction. It's a word that means collision of continents and what happens when continents collide. Alright, so you're probably watching this somewhere in central Pennsylvania. Maybe not, maybe you're off on holiday somewhere else, but State College here is certainly in the middle of central Pennsylvania. And what is remarkable about this area geologically is the so-called ridge and valley structure that stretches for hundreds and hundreds of miles to the northeast and to the southwest. You've seen them. You've driven over them. You've had to go long ways along these ridges with Tussie Mountain on this side or Mount Nittany on this side, Bald Eagle Ridge. So it's a very characteristic structure of this area and it was created by abduction, by the collision of continents. So that's what we're going to do. Let's take a look at some pretty pictures first that will motivate what it is that we're talking about and then we'll go to the PowerPoint presentation. This is a picture of a thunderstorm over Great Smoky Mountain National Park. Great Smoky's down in the southern U.S. is just an absolutely gorgeous place. High mountains, 4,400 feet high, wooded for the most part except for these wonderful balls that they have there, these tops of mountains that are bare for reasons that I'm not particularly clear on, but you'll be hiking through and then you'll break out into one of these balls and you can see forever, ridge after ridge after ridge and there's all these clouds that give it its name, the Great Smoky's and maybe there's a thunderstorm on the next ridge or maybe it's raining over there. It really is an amazingly dramatic place. It's not that far away, it's a days travel from here, but there's some lovely scenery in between as well. Well worth a spring break trip. You don't have enough money to go to Cancun or something like that. Time much better spent. Drive down to the Great Smoky's. Great Smoky's is where the Appalachian Trail comes through. One of the most extraordinary hiking trails in the world. It goes from Springer Mountain, Georgia, right up the Appalachian Mountains, right up to Maine, to Mount Katahdin in Maine and every year there's a few people, a few hearty souls that hike the whole thing. They start down in Georgia in the spring time and they follow the spring up through. They come up through Pennsylvania. They go right up Harrisburg, right up to Susquehanna Valley and then on into New York and then finally through the northeast up into Maine. So it's a beautiful place. Here's a picture of the Great Smoky Mountain Park. There's a bridge over one of the many, many streams. You have these mountains that stick up and to the west of the Great Smoky's you've got nothing. You've got these huge plains that stretch out from miles and miles to the west all the way through the Midwest until you get to the Rocky Mountains and the winds build and the weather patterns, the weather systems come down through there and they have to climb up over the Great Smoky's and as they climb up over it they dump all their rain down into them. They do the same around here. We're pretty wet here in Central Pennsylvania and one of the reasons for it is that these wind patterns and weather patterns bring a lot of water in. When you've got water, you have streams and here's one of those streams. A close up of one of those raging torrential streams. You can go online. This is one of our virtual trips, virtual field trips. We call them V-trips and you can read the captions. It's just a lovely place and you're hiking along and you'll come across one of these waterfalls. This is two views of the same one. There's some text there talking about why those waterfalls are where they are so you should have a look at this. Late autumn, things are starting to thin out a little bit and the ridges one after the other. You see that around here too. One ridge after the other. You climb up on top of one and there's another one behind it. The early European settlers were quite unsettled by this. They would get up over one ridge and there was another one that they had to go past. Lots of lovely vegetation, mountain laurel, flame azalea, lots and lots of animals that live in there. This is another thing that National Parks are wonderful for. They preserve flora and fauna. If we didn't have a National Park in Great Smokies, who knows what would be there. Maybe it would have been logged for farmland or a subdivision or a highway. So the fact that it's a National Park preserves all of these wonderful critters and plants. Right at the entrance in the background. Just a lovely place. So you should take a trip down there. So we're going to find out why the Smokies are important to us, why the Appalachians are the way they are, why the Appalachian trail stretches up through there. We're going to switch now to the PowerPoint and we're going to talk about tectonics part three. When continents collide, you get abduction. There's how the word is spelled and we're going to plunge right into it with go dog go.  But the important thing is that the hoods of their two cars have scrunched up like an accordion. Neither one gave way. Neither one went submarine under the other one. They just smashed into each other and they accordion up and crumpled and rumpled up. And that's what we're seeing over here. Those rumpels in the hood of the red car and those rumpels in the hood of the yellow car. Think of those as the Appalachian Mountains. That's how the Appalachians were created. Two continents collided. Not go dogs, but two continents collided. And when they collided, neither one gave way. If you remember from last time, the subduction one, when oceanic crust and continental crust collide, one of them gives way. One of them sinks under. And so you don't have these types of mountains that are produced when two continents collide. When they collide, neither one wants to sink down. And so they just crumple up, get shortened, and as they get shortened, they rise up in these peaks that we see around us here in central Pennsylvania and down in the Great Smokies. Here's a picture of the Appalachians. And this is a perfect shot. Ridge after ridge after ridge after ridge. Long skinny things. We are sitting on the hood of the blue car. Looking up along the hood of that car towards one of the drivers.  Imagine you're sitting at that collision point, looking up along the hood. That's all it is. That's all that these Appalachians are. Rit large. Here's a photograph in West Virginia. There's a road cut where Route 68 I think goes west through there. There's a wonderful visitor center where you can pull off the highway. And there's a wonderful explanation of it. You have these extraordinary curved layers. What used to be nice and flat. The collision they got smashed together and got turned up and turned down. And you can see that over here because the road is cut right through there. And so they've sliced through that part of it. So we're going to do a quick review of what we learned last time or the last few times. I know we've been throwing a lot of material at you in the last few weeks. But there is a lot of material to be thrown at you. It's all available online. It's on Angel. The text is free. You just have to download it and read it and it connects to all of this. Sorry, tectonics is driven by heat. I've said that over and over again. I'll say it again. If I ever ask you what drives tectonics, you just yell all together. Heat. There are a number of plates. The upper lithosphere is broken up into eight or nine plates. And they move about on these convection cells. The convection cells are due to heat. Oceanic plates are made up of basalt. And the continental plates have more silica in them. Silica rich. They're more lower density. They're more buoyant. When cold ocean plates collide with buoyant continental plates, the cold ocean plate sinks down. They're of high density. They just sink down and you get a subduction. When continental plates collide, that's what we're going to talk about this time. You get the Appalachian mountain range. It stretches all the way from Newfoundland down to Alabama. In Alabama, it sinks down underneath the coastal sedimentary plain. But the Appalachians actually come up again in Oklahoma. So they're just an enormous mountain chain. Continents are rarely destroyed. The story gets really complicated. If you take something and you just keep piling stuff on top of it year after year, you shred it, you munch it, you fold it up, you put it in the corner, you take it out, understanding its history becomes really, really difficult. The ocean is easy. It's created, it's destroyed. After 150 million years, 200 million years, all of the ocean is gone because it's been subducted and disappeared. But the continents are old. They're 4 billion years old. And in that time, they've had lots and lots of things done to them. And so it becomes really difficult to know what happened in the past. The analogy that I give is one of my colleagues. Not me, of course. I have a very clean office. That's a joke. You should come see my office sometime. But one of my colleagues has a really messy office. He's an older gentleman. He's been working in the department for almost 40 years. I don't think he's sort of sitting away in that time. And you go in there and it's piles of books and manuscripts, piles and piles of folders and papers and rocks that he's collected and instruments that he's collected. And so they get jumbled up sometimes because he pulls something out from underneath and he puts it on top. And so understanding the relationship of these papers to each other is really difficult. And that's the way the continents are. They've been all jumbled up and stuff has been piled on top and stuff has been pulled out from underneath. We're going to give it a try, though. We're going to give it a try and try and tease out the history of the Appalachian Mountains. Here's a satellite image of the east coast of the U.S. and the eastern Canadian Shield. And you have this very characteristic wiggly line. You can see it there that stretches right from the southwest, right up through central Pennsylvania, which I hope you can recognize the Delaware River there in the Chesapeake Bay. That's where Philadelphia is. And then on up into New England and then right off the top would be Newfoundland and Canada. And you can see that this mountain chain stretches along long ways. And it's got these long linear features to it. This is the Susquehanna Valley from space. This is looking down at just the region right around here. That's the Susquehanna River. Harrisburg is right in the middle over there. And you can see these ridges one after the other stretching up through there and this river slicing through them allowing us to work out their history. All right. This is what we're trying to figure out. Why are the Appalachian Mountains here? What's their relationship to the rest of the world? The Appalachians are a complicated place. They are simple. As I said, the analogy that I give is of my colleague who has an office and has been filled with stuff and stuff has been removed. And it's very hard to tell the relationship between things. But we're going to give it a try. About 300 million years ago, North America and what's now Africa and Europe collided. These two huge continents, neither of which wants to sink because they are low density. Neither of them wants to sink under the other. It's like a game of chicken. And the two, neither of them gave way. They smashed into each other. And they crumpled up to form these huge mountain chains, possibly as high as 15,000 feet. We don't really know. But we think some of those mountains might have been as much as 15,000 feet high. It's similar to what's going on today, right now, in India and Tibet. The Indian continent is running into the Asian continent. And as the two run into each other, you have these enormous mountain chains. The Himalayan mountain chains, the highest spot on Earth, Mount Everest is 28,000 feet high. And it's because of this collision of India and Asia. This is a picture of that collision. The Indian landmass was way out in the Indian Ocean 70 million years ago. And it came zooming up over the last 70 million years. And today it has smashed into the Asian plate. And in the process of those two continental masses, India is a continental mass. Asia is a continental mass. Neither one wants to give way. And they just run into each other. And they crumple up. And then the rocks in between have nowhere to go, but up. And so you get these huge mountain chains of the Himalayan mountains. This is a photograph of Mount Everest. Sagarmatha is what Mount Everest is called in the Nepali language. And it's an absolutely awe-inspiring site. First climbed by a museum under. So in the process of these two continents colliding, they get shortened up. It's just like the hood of the two dogs that we saw. That's an analogy, but it's a pretty good one. You take a hood that used to be longer, you accordion it together, and now it's shorter. And that's what happened with the North American continent and presumably with the European slash African continent when they collided 300 million years ago. One of two things could happen. The first is what's known as a thrust fault. This is where when the two continents collide, you actually do get sliding of one over the other. You don't get subduction. Nothing sinks back down into the earth, but it's as if you have, you can think of two sheets of paper that run into each other. One just climbs up and slides over the other one. This is known as a thrust fault. You can shorten up a continent by sliding one part of it over the other. And this is partly what happened in the Great Smokies area. And one of the reasons that we know that is that there are places where there are young rocks underneath older rocks. And this is a very unusual situation. Usually the old rocks are in bottom and you pile younger rocks on top. It's like my colleague with his office. He gets a book and he puts it on top of an older book. And he gets a newer book and he puts it on top of an older book. And then he gets a newer book and he puts it on top of that one. And so you can look at him and, oh, there's a book that he got 30 years ago and there's a book that he got last week and that's this normal sequence of things. Occasionally, though, he'll go and he'll pull out one of the older books and read it and put it on top of this pile. And so the whole thing gets jumbled up and you don't know the sequence. That's what's happened down in the Great Smokies area where you have older material that's ridden up on top of younger material. Further north, around here, the rocks are more wrinkled. They look like a kicked up rug or a sheet of paper that has been collapsed. We've got a young kitten that we just adopted from the shelter and boy, is he ever active and he loves our rug. And we don't have one of those little rug runners, little rubber things that keep the rug from sliding around. And so he'll run as fast as he can and he'll attack the edge of the rug and he'll slide into it and he'll shove that rug back and as he does it, he'll form these wrinkles one after the other. And he doesn't seem to realize that that's a valuable rug but his enjoyment of it simply comes from rumbling it up. This is a similar sort of thing that happened over here. These two continents collided. Instead of one sliding under the other, what happened is the continent got shortened but now by being crumpled and rumpled up like a rug. The rug itself is layered. There's hard layers and soft layers and as time goes by, you get differential erosion that we'll talk about next. This is a cross section. Remember what I told you a cross section was if I could take something and slice it open and look at it from the edge, that would be a cross. Look at it from the end. That would be a cross section. And this is a cross section through State College going from the northwest side, the Allegheny Plateau and the Allegheny Front on one side going down through Bald Eagle, through Mount Nittany, through Tussie Mountain and heading off to the southeast on the right down towards Harrisburg and down towards Philadelphia on the right. You should recognize this. If you have ever driven from here to New York City or ever driven from here to Philadelphia, you've seen this. You have to drive up over seven mountains and down the other side and then there's another valley there and you have to drive up the next one and then down the next one and that's what's going on over here. But if you're a geologist, you can go and look at the types of rocks that form the different mountains and what's interesting here is that these layers what used to be a sequence of nice flat layers that have now been squeezed together and crumpled up have eroded in slightly different ways. Where you used to have very hard rocks were the high places and those cracked and you went down into the softer material and those just eroded right down to what are now the valleys. So paradoxically, it's where the very hardest rocks used to be very, very high up. Those have what have broken through and now we have very deep valleys there and the ridges in between are made up of what used to be the somewhat softer areas. Eventually the collision stopped. These things are colliding. They're getting pushed together. Eventually the collision stopped and then a spreading began. Similar to what's happening in Death Valley today. Death Valley is a mid-continental spreading ridge and that's something that also happened in this area about 150 to 200 million years ago. You started to have spreading apart of this in similar fashion to what happens in Death Valley and the Atlantic Ocean was formed. As you started to rip it apart and then the waters rushed into that low spot that was created where the continent was spread apart. The mountains stopped being pushed up. You're no longer shoving them together so you stop shoving these mountains up into the air. As soon as you stop doing that those mountains will start to be eroded downwards. Mountains are very rapidly eroded. This is something we'll talk about more down the road when we're talking about erosion but when you have these high mountains the winds blow on them, the water rains on them, the glaciers build on them and they slowly get scraped off. That's what erosion is. Erosion is simply scraping off pieces of this mountain and making it go away and depositing them in the low spots. But for some very interesting reasons the mountains are still fairly high. There are 2,000, 3,000, 4,000 foot high peaks. They used to be much higher. They used to be 15,000 feet but even though they're very old they haven't been scraped down to sea level yet. You would think and we know about rates of erosion and so we should have been able to scrape down those 15,000 feet to sea level by now but we haven't. These mountains are still up 2,000, 3,000, 4,000 feet. Why is that? It's something called isostasy. Mountains have very deep roots. When we squeeze those continents together the continent bulged upwards but it also bulged downwards. When you squeeze them together it isn't as if the bottom was flat and it's just the top that bulged up when you squeeze it together. Think of silly putty. When you squeeze that together it bulges out in both directions and that's what happened with the Appalachian Mountains. Some of it bulged upwards and some of it bulged downwards and as the mountains are scraped off on top these roots ride up scrape off some more the roots ride up scrape off some more the roots ride up and so to get this mountain scraped down to sea level you don't just have to scrape away the stuff above you've got to scrape away the stuff below so I'm going to go to the drawing pad and illustrate this notion. Abduction is a collision of continents and about 300 million years ago we had the North American continent we had the African European continent and the two of them collided. They ran into each other and over time as they kept pushing against each other you had to give way. The one had to give way neither of them wanted to give way but something had to happen and so you've got shortening of the continent and one of the way they shortened is that the continent rumbled up like a rug this is still Africa here and this is still North America on the left they've shoved into each other and they have rumbled up but in the process of rumbling upwards I'll go to a different color here they've also rumbled downwards wherever you see a high spot like this they also have a low spot underneath them you squeeze them together and in the process of squeezing them you squeeze upwards and you squeeze downwards so I'm going to zoom in on that and show that in a little bit more detail this is a view of one mountain peak and it has a deep root that might be three times as deep as the mountain is high so even if the mountain is three miles high then the roots might be 10 miles deep or sometimes much deeper even than that so it depends on the density contrast between crust and mantle after the collision you've now created a mountain let's say 15,000 feet high but at the same time you've created this deep crustal root that goes deep down into the mantle that has squeezed downwards at the same time that the crust has bulged upwards over time the collision ended and so the mountain stopped growing and in fact erosion took over and the mountain started to be scraped away but the mountain isn't gone yet even though we've scraped away and scraped away and scraped away we've kept eroding that mountain away it's still there after all this time it's still there and the reason for that is as you scrape material away more material bobs up from underneath and that's the principle of isostasy that's what we're going to talk about next I'm going to switch back to the PowerPoint very briefly here and then we'll come back to this picture drawing as the mountains are eroded they remain high because the material from below is floating up at the same time it's like an iceberg floating in water you probably have heard this expression nine tenths of an iceberg is below water and only one tenth is sticking up and if you remember that movie the Titanic with Kate Winslet and Leonardo DiCaprio or somebody the two of them are on the Titanic they're riding along and it smashes into the great iceberg and disappears and all of that it's because only a little bit of it is above water and a big chunk of it is underwater iceberg ice is slightly less dense than water and so it mostly sinks down into the water but a little bit of it sticks up you can do this experiment for yourself you can go home today get yourself a glass of water take an ice cube out of the freezer and just drop it in and if you look at it you'll see most of it is underwater and a little teeny bit will stick up above water if you want to do it a slightly different way you can go up to your bathtub take a bath put in lots of hot water put in some bubbles get your little rubber ducky out and put your rubber ducky in you'll see that the rubber ducky floats way up a little bit of it underwater a little bit of it above water that's the principle of isostasy different things that have different density contrasts an ice cube in water a rubber ducky in water a mountain in mantle a crustal mountain in mantle each of these will float in the fluid a little bit of it will be below water and a little bit of it will be above water and the amount that is below water and the amount that's above water depends on the density difference between them ice and water have almost the same density so most of the iceberg or ice cube is below water and a little bit of it sticks up above water and the Titanic can run into it because you can't see it alright, so that's what we're going to talk about we're going to show you a picture of what this iceberg looks like before we do that let me review a little bit about plate collisions we saw in the first week pull-aparts that was Death Valley last time or two times ago we saw subduction Crater Lake, Mount St. Helens, all of those we're seeing abduction this time and we talked about slide past very briefly when we talked about the San Andreas Fault in slide past tectonics sometimes these two plates when they're sliding past each other they won't slide very smoothly you'll have a kink in the boundary and where these two are sliding past each other you'll get these big mountains being built this goes along with the theme of all the action is at the boundaries it's where the plates are running past each other it's where the plates are running next to each other it's where the plates are running into each other that's where all the action is that's where the mountains are being built so we talked about abduction we built the Great Smoky Mountains and we're going to come back to Isoastase in a minute let's briefly take a detour to slide past tectonics if there's a kink where these two boundary plates are running past each other once again you'll have these great mountains being built the San Gabriel Mountains near Los Angeles are a perfect example of that the San Andreas Fault wants to go straight but it's got a little kink in it and you get these big mountains being built all of these are examples of Isoastase where these mountains are built you get these high mountains and you get these deep roots underneath anytime you've got a high mountain on a continent you've got a deep root underneath it and we're going to take a little detour here if you remember I told you when you see that little symbol up in the corner that means we're running off the tracks and we're going to wander off and talk about something slightly different during World War II there was a proposal to build an aircraft carrier from an iceberg because it would be unsinkable the Germans could come along this was an Allied project the US and British project the Germans could come along the submarines and fire their torpedoes at these aircraft carriers which is made out of an iceberg and it wouldn't sink it would just float and this was an actual project it would be unsinkable they thought big during World War II they really did they were in a struggle for their lives for their ways of life and they would do whatever they needed to do to survive and they came up with this what now seems like a perfectly ridiculous idea but it was actually taken forward quite a ways it was called Project Habakkuk I'm not quite sure why Habakkuk and it was a small one that was built on Lake Louise as a glaciologist I find it very interesting things that people do with ice but this was quite a visionary project that never went anywhere back to the track we're going to we're going to talk about the Rocky Mountains next that's going to be another example of mountains built within a continent we've seen how abduction can create the Appalachian Mountains how they will rise up high and they'll have deep roots and as you scrape away the top of the mountain the bottom will rise up to take its place and so you guys scrape away some more and more and more has to come up so that was abduction you can also produce mountains a kink in a slide past boundary so now I think we've run into just about every type of mountain building mechanism the last one that we're going to look at is one of the most unexplained one of the most enigmatic it's the Rocky Mountains right in the middle of the continent why do we have these mountains way in the middle of the continent and that's what we're going to do next time


Eventually, look how long the distribution has been on Roblox, right guys? And that's kind of the whole point of a macro channel. It started this channel in May, okay? We're in July, okay? So we're talking May, June, July. We're talking about three months. So we know four times, three, four times the stock has been rejected off $43. I want to get as much liquidity as possible off that $43. It's not one of those cases, well, they buy a little bit here, then it'll be at... No! I want to get all. I want to get as much liquidity as possible on that $43 channel because what's going to wind up happening is if this thing stalls, right? We all know it already got rejected off 43 three times. If this thing stalls out, we're going to lose pennies, 20 cents, 15 cents, 18 cents. Who cares? Right? And I don't mean that in a meat way. It's like, who cares? You're losing pennies to make dollars.


Let's let's get this started then Can everybody hear me, okay? Awesome. All right. Well, how's it going everybody go afternoon? I don't know where my screen there we go So my name is John beyondy. I am a network security software engineer at double verify And today I am pleased to present to you guys my presentation on pub sub with postgres so What I'm going to take you guys through today is You know first off what is pub sub the theory behind it, you know, just what am I talking about? Then we'll talk about what this has to do with postgres You know how postgres can help you with this And then I'm going to walk you through like a sample application. So something a little experiment that I've You know use this for here we go the description So what is pub sub pub sub is first it's it's short for publish subscribe Which is a messaging pattern. So basically describes a way for two processes or two servers or you know threads or whatever The to communicate with each other So it's a form of asynchronous communication It's basically It's very very similar to how a message queue works. In fact, it's usually bundled in it's a package deal with Most of the big-name message queues. So like rabid mq Rabbit mqs provides this functionality So we have it's basically a you know a two-agent service Or a two-agent pattern. So you have a publisher which Generates messages so it generates like events and it sends them off to some queue And then we have subscribers that are then notified of relevant messages So the messages are like, you know popped out of the queue and sent to whoever was listening So the best you know the reason we do this is because It decouples publishers from subscribers. So it's not like like a rest endpoint or something where you have to keep polling It's whenever the data is available if you care You'll be notified So decoupled. What does what does that mean? Actually, it's like it's a loose loose coupling so publishers and subscribers don't communicate with each other They don't necessarily know about each other. They don't really care about each other All they care about is the data being sent between them So a publisher will generate a message on a channel. So for you know, for example I want to know if When like a new user is generated and that's all I care about So the publisher will generate a message saying, you know, new user John created It enters the queue and that anyone who cares any subsystem or process that cares about New users will then be Will then be notified about about the the new information It's not like a fan out thing where we're all subscribers are Told about all an information they a subscriber subscribes to a channel so that could be any one or more Channels Which is like a topic or some some form of information that they care about and that's all they get So a publisher can be publishing, you know on hundreds of channels hundreds of different kinds of information and a subs Subscriber will only get the subset that they care about So this is how it looks with pretty colors. So here you see publishers Broadcasting different kinds of information it enters these queues And then a subscriber who is subscribed to each, you know individual Queue will then be notified So how does Postgres do this Postgres actually implements Something similar it implements this right out of the box and that was my expression when I found that out The thing with Postgres though is it doesn't really it's a little bit different because the in a true pub sub implementation the Like the message queue is almost like a third-party service. So, you know, you'd have like One server talking to it rabid mq which then another server consumes In Postgres Postgres is both the publisher and the the queuing service So Postgres supplies this with Two functions now and listen and notify so notify is the publishing it looks like this So you say notify the channel name so like notify users And then you can supply a payload. So you'd say either notify users which just broadcasts an event Or you'd say broadcast users and the payload so it could be a user ID or username or something like that And then postgres supplies a second function called PG notify, which is a little bit more programmatic So with PG notify it accepts to Two text parameters Which then you know you can do stuff like like string concatenation and stuff in there to get something a little bit more dynamic So notify as defined by the Postgres the very detailed Postgres documentation is an inter-process communication mechanism For all these different processes that are accessing the same database The channels that Postgres can publish to they're Assigned by the programmer. So there's not like a really a standard or anything That assigns them you pick it the common practice though is that usually you You name the channel after like the table that you're You know containing the information that you care about But you can name it whatever you want So when notify is called It generates an event So an event looks like it's basically just a string with a channel name The publisher service PID and then the payload string which if you didn't supply one is just the empty string So Notifies or So you run a notify you can run a notify inside a trigger or a transaction You can run as many as you want like you can call this function as many times you want inside a transaction But they won't actually run until the trigger the transaction has been committed And I guess that makes sense because you know if you have a transaction that rolls back You don't want it to start putting out events because you can't take them back once they're gone or once they've been sent out So if you do multiple transactions in or a multiple notifies in a single transaction Postgres is actually pretty smart about it. So if it sees that you're doing you're Notifying to the same channel with the same payload However many times in a single transaction it can roll them as it can intelligently roll them into one So there's be one notification But if they have different payloads Then they're guaranteed to each each notification is guaranteed to be sent and Postgres guarantees order of messages So the order that they're generated within a transaction and then the order in which the transactions run is the ordering And then here's what it looks like in The console so I subscribe to listen which we'll get to in a second get excited So then I call notify Which just broadcasts a you know an event with no payload and you can see that Postgres has Received the notification Then the second one I do I notify to the same channel again But this time with a payload you can see that this is the payload and you can see that it has been received Then the second little block on the bottom there shows PG notify and how that works so you can see the first you know I call PG notify with Concatenation of fo and oh to make foo and Payload of pay concatenated with the load to make payload And then you can see the the output of Postgres there where it received the notification So the flip side of notify is listen so listen is the subscriber part of this pattern So listen registers a Postgres session as a listener on a channel and you can call listen over and over and over and over again from the same channel or from the same session on the same channel and Postgres were only registered once so every time every subsequent call will just do nothing Sorry, I get so excited about this my mind is blank so So similar to how the notifies don't run a notify won't actually happen until the notifying transaction is complete The listener won't actually consume the event the notification that it's received until it's done with its transactions So if it's in the middle of something The message just sits in a queue waiting for it to waiting for the listener to be ready to consume it Which can cause some problems, which we'll get to in a second Whenever you're done listening or you don't care about You whenever you want to unsubscribe you unregister with lit with unlistened All registrations are automatically cleaned up when a session ends. So when you disconnect either by accident or on purpose You're removed from from the subscriber list And a session can both listen and notify on the same channel as we saw in my little demo code There where I'm doing listen and notify at the same time. There it is again So a few seconds ago, I just I mentioned that there's that queue that messages go into when They haven't been consumed. So postgres puts all of the messages That haven't yet like fully been delivered but have been sent It puts them in a message queue where they sit until all of the subscribers have been had a chance to Consume them or they've been delivered This queue by default is 8 gigabits and 8 gigabytes in size So like I said if a listener enters a transaction The message sits in that queue and if you have a really long-running transaction or a transaction that just doesn't end Postgres can't clean out those messages So that could be a problem if you have like really high traffic and that message queue starts to fill up at 50% capacity it starts throwing warnings into the log with the PID of the offending listener So it gives you the opportunity to turn around to go in and kill that transaction to allow postgres to start cleaning up And it's really important to pay attention to those logs because when it fills up Notify the notifies will fail and nobody will be notified anymore So like possible applications of this You know you could have something like I mentioned before like new users So as an every time a new user is a new row is created like a users table a trigger can run which you know launches off a notification that some client-side up some after some other application can consume that and then you know Spin off a welcome email or something That is super useful Something a little bit more fun that I've been playing with which we're going to touch upon is a cash management So you can use it, you know an event to trigger a invalidate cash or update cash or something like that So now we're gonna some code. I don't know who's feeling who I'm feeling like the guy on the right And maybe you're on all the guy on the left So I'm gonna explain my the problem a little bit So I was working on a we're working on a data store that use postgres as the storage back-end So the data store Basically contained a log table It was supposed to be like a generic object store kind of like I don't want to say the bad word of Mongo But it's kind of like where it'll accept like any kind of data and be able to you know restructure it when you when you need it So So we ended up storing everything in like this normalized log table, but then we had to reconstruct the objects Like at a later date Had to be super high performance. It was distributed So that means we were we're gonna have like replicated instances of this data store all connecting to a single Postgres back-end so like if RDS supported this it would have been like RDS or something Which RDS I don't think supports PG notify so Yeah, but so the ultimate thing was that we'd have we have all these objects with like dynamic basically dynamic columns and We had to reconstruct them at like runtime. So that was the point of this this problem So what we did was we basically I had to build a cache To store the name like what I would use as column names when we reconstructed a regular table in a regular format so What we what I used is I used go some super into go and I highly recommend it and Postgres something else.  So I have this fields table which describes like all the columns that I have for my objects So here I have like a UUID And an object type ID because you know we can have different kinds of objects being described the title of the field So first name last name And then a value type. So I was we turned everything into strings and then When we would render it into a full object it would return back to its native format It's our native native type So this is like, you know what what the table looks like. So you have we have a whole bunch of UUIDs and then the title first name last name age favorite ice cream like whatever you want and then value types So zeros or strings one or ints and then here's the log table that actually accepts the values for those fields So we have The foreign ID of a field ID the value and then like whatever this This value was created this row was created. So this is what it looks like There's, you know, me John Viani 27 favorite ice cream vanilla Fun fact anyone wants to get me ice cream So basically what we do is The easiest thing to do is I cared about every time Every time we created a new Field it would be a new column So I wanted to cache that on the server side like in the application so I could really really quickly construct queries for reporting So what we would do so like, you know, what we do is we create a trigger on New rows the fields table and in that trigger we run this Store procedure and the store procedure. Basically, I We take the new row and I concatenate it into a comma-separated comma-separate comma-separated value and then we call PG notify on the new fields on the new fields channel with the new field payload Something else that you could do here. I thought a little bit was over. I thought was a little overkill But you can use postgres super awesome JSON capabilities so you can Like json stringify the row and then just send this big json object. So that that's another that's a cool alternative But it was a little bit Overkill for this So now we're going to jump out of postgres and in to go So in go this is how you would This is how you subscribe So I have my my driver object So I connect to the postgres I connect to the postgres database. I Have a report problem function, which is just like the error handler function And then on line 26 there you see I create my listener object. So I Basically I connect to Connect to postgres I have a 10-second timeout Call the report problem callback and then I subscribe using listener.listen to the new fields channel And then I panic if something goes wrong So You can use this so what this does basically is this this creates like a dedicated socket So I have my regular postgres connection, which you use for You know to do regular queries and stuff and then when you call a new listener it creates a second socket dedicated just to listening So we have two two connections of the postgres client here, which makes Life a lot easier when it comes to that that message queuing thing because there's no transactions running on the second session, so The queue doesn't really fill up Okay, that's that and Then this is where we asynchronous asynchronously listen to that that second, you know that that exclusive socket to the listener so basically I I have this infinite for loop where I block on that song listening to that socket So while the saga is empty, this just does nothing and as soon as a notification notification comes in This case statement runs I figure out what channel was in the notification In this case like all I care about is the new field channel and then there I take that payload string and I Reconstructed back into a field object for my application So this would be running like in a second this would be like this is a worker So this would be running in like a separate thread or a go routine or you know, whatever And then you know once I've constructed the object, then I add it to my cache So like I said, you know, there's there's possible there's possible issues with you know using this technique The biggest one is that queue You know that that queue filling up is like is a really big deal because like unless you're monitoring the The logs if that queue fills up you're in really big trouble Because the whole all notifications start to fail once that queue is is in trouble another issue is timing So since messages are only delivered between transactions, you know, so they they only they're only Notifications are only sent when the notifier When the notifier's transaction is done and they're only consumed when a listening transaction is done If you have like a lot of long-running transactions going or something, you know long-running transactions going You can lose like this real-time aspect because like the messages kind of wait for each other to be they wait for each other to be ready So that can cause a lot of confusion if you don't know that's that that's how it works So in summary Postgres does this out of the box You know, there's no need so for the application. I just showed or you know for using an email or something There's no need for like a secondary another middleware between Postgres and whatever you're doing because Postgres supplies this this publishing and subscribing this asynchronous notifications just right out of the box Which is it's really awesome and it's really simple which is actually why this presentation is so short because Postgres makes it too easy So the only thing I can leave you with is watch out for really long transactions and Give this a shot because I think it's it's a really cool functionality and it really opens up a lot of doors for a whole bunch of stuff So I recommend it if you want to talk about it. I'm all for it Once again, my name is John beyondy. I work for double verify We are hiring and thank you for listening So does anybody have any questions or questions comments concerns? I don't think that's configurable I know that the the size of the queue of the the message queue is configurable. I don't know if that triggering is I'm sure it is I didn't do it because I figure if it's triggering at all. You have a problem So I have to research it. You mean like the listen that's second listening socket No, it shouldn't because it just it should just It should just like just stay open and then like that, you know, it keeps alive on its own So there shouldn't be any issues with it like timing out because there's just no notifications As far as I know, I left my running for like a week the server connects directly to the database. Yeah, so there's no issues there So that's something I'm really fuzzy on Because it looks like so I looked at how the C library and PQ both deal with this and It looks like you lose mess like let messages are just lost if you if you did especially if you disconnect too long Messages are just dropped Because like they're either cleaned out or like the session doesn't reconnect it reconnects as a new session so it Yeah, I wouldn't count on like counting on the message delivery is not like Super great But it works really I mean it works really well. I didn't have any issues with like I Didn't have any of those issues man. You guys have a lot of weird stuff going on with your life I mean, maybe I'm just super lucky with this But I didn't have any of those issues like I mean when I ran it.  I just showed so we just use it as like a So it was for like a It's kind of secret stuff, but Basically, it's just it was like a data store So we were using it to just be able to dump so from different services would be able to dump their objects into this data store And we'd be able to reconstruct That's annoying we'd be able to reconstruct objects like at snapshots in time or like, you know across different domains So it was just like a it was just an object. It was just a data store like an object store It just a text. It's just like a string Probably I don't I try to keep everything short and sweet because like when I was doing this like it had to be really fast So like I mean, I only wanted like a couple characters Just like basically I wanted like UU IDs and then like maybe a title just so for debugging So like I never went above like above like 50 characters Wait, what? Yes Yes, it goes to all subscribers to a single Channel. Yeah, anyone who's registered as a listener. They all get notified at roughly the same time Yeah, if nobody's listening like it enters the queue and then it just has dropped and cleaned out because the queue only holds the messages as long as There's listeners who haven't consumed it. So if there's no listeners no listeners To consume it. It just falls right out of the queue. Yes Wait, you mean like so my go background worker? No, haven't you haven't done that. I Left all the like the concur like all the concurrent behavior like I do that and go I just let Postgres figure out the rest. I think it's only on the master I mean, I had issues with replication all the way around. So I'm pretty sure it's only the master. I don't think so. I'm pretty sure it has to be a Like a defined channel that would make PG notify block I don't think so because it run it doesn't actually do anything until after the transaction has been committed That's it. No, okay the actual The actual notification is run Asynchronously so it doesn't actually notify anyone until whatever transaction was in is done But if the transaction holds up Then the notify doesn't actually get sent Anybody else cool Well, thanks a lot


My one thing that I've always wanted to learn how to do is how to temper chocolate and so I invited my friend Priscilla, the pastry chef, to come and teach me. So what do I need to know? So, first we're going to take our chocolate and you're going to want to cut it up into smaller pieces. Normally when you get it at the store or anywhere, it's already tempered. So in order to do different things with it, we're going to melt it and re-temper it into whatever shape we want. We're going to put it on our double boiler.  So if you're going to put it on, you've got to stay there, you've got to babysit for a little while. People are afraid of tempering chocolate. Only because there's a lot of different steps and you know, you get caught up doing something and you don't want to do all the steps so you think you can take a shortcut and it's really about the directions and the steps that you have to take. So I think that's why it seems overwhelming. We're looking for temperature around 131 to 136. That means like you're there. Okay, now we're going to take it down. Right, we're going to cool it down so you'll get like a really stable, shiny chocolate. So when you get it on the bowl, it's super important that you don't get any water in it. It's kind of like on-off, on-off. And then I feel like this. Exactly. So now you can see in the bowl that there's this kind of like really cold outer part of it, which is obviously what was touching the ice. So you're going to take that chocolate and press with your spatula like this to kind of like take the warmer chocolate in the middle of the bowl and kind of like warm the outside. This is so important, that texture of just pressing the hot chocolate? Right, it just melts it and then you can see the sides of the bowl again. Then you know you can get back on there. Yeah, we mix around to make sure everything is the same temperature. Because if I took the temperature on the one side of the bowl, it's going to be cold because that was what was touching. So you want to take your thermometer and touch the middle here. So you want to get to 82 to 84 degrees. That's like your cold temperature. And then we're going to bring it back up. Right, so we can work with it because when it was down that low, it's like really fudgy. So we're going to go back on our heat. This is the hard part too, just like the ice. Once you're off the heat, you want to scrape all the chocolate that's on the sides because that was what was getting direct heat.  I'm at 89. Okay, so you're ready to go. So now we just want to make sure that we're definitely in temper. The fastest way to do it is taking something metal, whether it's a butter knife or an offset spatula at home. And you're just going to like dip it in the chocolate. This is maybe one of the hardest parts because you got to just leave it alone for a second. So right now we're really looking for it to just solidify and give you that snap. The tempered chocolate, you know, look from A to Z within like three minutes. Because it's Valentine's Day, I wanted to do that dessert that's like the chocolate dome and then you pour the melted chocolate over it. Right, and it melts. Yeah, and then you see the amazing dessert inside. Got it. Okay. So we have our tempered chocolate from A to Z. Now we can take it and then we'll just dunk. So my bowl is a little shallow, but you can just roll it around, right, until you get all the way around. And then we're just going to let that set like the knife set. Okay. We're going to get this really cool hard shell. I can't believe we made this. Thank you. This is the chocolate dome that has the dessert inside and then you pour the hot stuff over it and then it melts and then you eat it. Yeah. Okay, let's do it. Okay, let's dig in. Okay. All right. So gooey. And healthy. Filled with vitamin C for chocolate. You love chocolate and do you want more tips? Check out more One Thing videos and of course, check out Priscilla. At Restaurant Gabriel Crayther in New York City.


This research explores the relationship between temporal lobe epilepsy and topopathy. It found that changes in tau phosphorylation dynamics occur at a much earlier time point after status epilepticus than has previously been described. This suggests that seizures promote tau phosphorylation in vivo, but begins much earlier than previously thought. Future work will need to further investigate how these changes develop over longer periods of time. Additionally, it will also need to characterize the effect of topopathy on electrical activity in vivo and in vivo.


Saint Lucia's Prime Minister Honourable Philip J. Pierre made his first official out-of-state visit on the weekend, attending the Summit of Heads of State of Latin America and the Caribbean. As we hear from Lisa Joseph, Honourable Pierre used the opportunity to call for a unified approach to combating COVID-19 in the region. The sixth summit of the community of Latin American and Caribbean states, CELAC, was held September 18-19, 2021 in Mexico City, Mexico. CELAC is an intergovernmental body comprised in 33 countries in Latin America and the Caribbean. CELAC was created in December 2011 in Caracas, Venezuela, with a commitment to deepening integration in the hemisphere, ensuring unity, political, economic, social and cultural diversity of the 600 million people of Latin America and the Caribbean. The Summit of Heads of State had an urgent atmosphere after not being held for two years due to the COVID-19 pandemic. Leaders discussed the region's response to the pandemic, as well as the creation of a fund to respond to disasters derived from climate change. Saint Lucia's Prime Minister Honourable Philip J. Pierre told the Summit, he firmly believes that CELAC can serve as an important voice for unity and cooperation in the region, particularly on self-sufficiency in health matters as member states are plagued by the COVID-19 pandemic. Unemployment among our people, especially the youth and women, the threat of climate change that can and has nearly wiped out our entire countries, the failure of the international financial community to recognize our vulnerability and hold the classification of our economies as male income countries, particularly now with the crisis of COVID. The unequal financial and trade restrictions placed on our small economies. In this regard, we know the ascension of Costa Rica to the OECD and trust that our issues will be raised in that important body. Since its launch in December 2011, CELAC has helped to advance dialogue among all countries in the region in the areas of social development, education, nuclear disarmament, family forming, culture, finance, energy and the environment. Prime Minister Pierre noted that consensus building on matters of common interest is imperative, as all member states face the same challenges. We need unity to fight the misinformation and vaccinations. CELAC believes that the international integration of the peoples of ECLAC can serve the people of our regions in good stead. We salute the struggles and hope for speedy resolution of the problems in Venezuela and Cuba. Mr. President, we affirm our commitment to true democracy and call for a peaceful and equitable opportunity for our people to survive and improve the quality of life. CELAC believes that regional economic integration provides a common platform for which members can best promote the interests of the rest of the international community. We respect this multilateral system. Honourable Philip J. Pierre indicated that organisations like CELAC share the same philosophy as his administration of putting people first and as such he looks forward to meaningful engagement and participation in the hemispheric grouping. From the Government Information Service, Lisa Joseph reporting.


The Academic Staff Union of Universities, ASU, has rolled over its ongoing strike for another 12 weeks and that's according to a statement signed by the Union's President, Professor Emmanuel Osodeke. He said the Union has given the government enough time to satisfactorily resolve all the outstanding issues and that the role of a strike was effective from May 9th that's today. ASU said it took the decision after its National Executive Council meeting which was called to review developments since the Union declared an eight-week total and comprehensive role over strike at the end of its emergency meeting on the 14th of March. Some of ASU's demands include the release of revitalization funds for universities, in negotiation of the 2009 FGN-ASU agreement, release of earned allowances for university lecturers and the deployment of the UTAS payment platform for the payment of salaries and allowances of university lecturers. Now Unilike students this morning staged a peaceful protest against continued ASU strike. They walked on the road singing solidarity songs up to their school gate demanding that the government resolve the strike and let them return to school. They however said the action was just a warning protest and that if government does not listen to them they would occupy the streets. In front of the University of Lagos gate the students of the school gathered to protest. They are demanding that the government should ensure they return to school. Margaret Akiwande a mother of one of the students joined them in solidarity.  I want ASU to go back to school, to go back to resume. If one person that wants to come out as the president can purchase a phone for 100 million it means they can afford to be the demand of ASU. They are not lessee youths because when they go abroad they all excel. We make that vote and the youths we have the vote so we keep our votes. The students were sympathized with their lecturers because of their remuneration let out their emotions. They said the protest would continue if the government did not resolve the issues. The government has become very irresponsible and it is very clear so there is no ground that they are even shifting or there is no ground that they are even made right now. The government has not even called for a single meeting with ASU and yet this is a government that negotiates with bandits, negotiates with terrorists but cannot negotiate with workers. Nantes have said there is not going to be any primaries presidential primaries for the PDP or APC if they don't that's a very good demand. I gave admission since 2019 and I'm still in 200 level like I've not even written 200 level exam I can proudly say I'm just in 100 level and if it is about staying at home learning a skill I wouldn't have written Jambidi firstly. Where would I graduate ASU be like they are rolling over a strike like it's a data gun drill I don't get this is our lives that you are playing with. The government is listening to us we are showing the government that we are going to come out again we are not going to stop now and 233 we are out for them. And we just heard the extent of the strike by another 12 weeks which means if we are not how we are to protest they are going to be resuming by August we are tired of sitting at home we are tired of roaming about the streets of Lagos. I need my right to education.  Take a take a minute of fasting then they will know that the students are ready to come out and take the bullets. Because I was supposed to be for 3 years I ended up spending 4 years because of strike and then I came here for human kinetics and I am supposed to spend 4 years and now I am going into 6 years for 4 years because round it all up that is 10 years just because I want to have a degree. Let our 4 years be 4 years is pay our lecturers that teaching us because we have the future of tomorrow. We will not stop until we get what we want. They have neglected the educational system of this country. They are busy buying nomination forms for the upcoming election and they will still come and clamor on students to come and vote for them. We are very idle yes we are very very idle we are lazy Nigerians we don't have anything to do so we are going to come out or we are going to keep coming out to the streets we are going to make sure that everybody feels the pain that Nigerian students are going through. It has been over 80 days since the strike began and with the recent announcement by ASU that they are extending the strike by 12 weeks Nigerians are watching whether the government will listen for George plus the venue. And away from Lagos to Edo state where students of various universities across the state describe the 12 week extension of the ongoing industrial action by ASU as unacceptable the students blocked the entrance gate to the Benin airport. They also took their protest to the state secretariat of the Nigerian Union of journalists. We did to the 4 hours the dish out money for subsidizing a version 4 but for the past three months they did not see money to send to ASU because why because why we the common man we are the one suffering it and the inflation the flat they are the one using it enough is enough of the foolishness we cannot continue like this. Just a few days that the local airport went on strike in less than 24 hours. They brought them back. They brought them back. I sat on Thursday of last week we've been home for 80 days. 80 days. Yesterday we have been told that they've added 12 weeks more in a government, how will a government prioritize politics, aviation, to education? And you recall that we remain on fire when it comes to reporters. Yes. I want to assure you very strongly that the points you have raised this afternoon will be taken to the appropriate quarter.