The first time I boosted up cube, the ore, and loaded into my own randomly generated world, I was awestruck with how beautiful it was. The crystal clear image quality had me transported into this voxel world where somebody asked the question, what if minecraft was prissy? Stunning lysing with dazzling god rays and pitch black darkness at nights or in deep caves, really show off the hdr capabilities of your psv or 2. Cube viewer is easily up there with red matter and kayak viewer as one of the best looking games on the headset. In terms of gameplay, the minecraft inspiration is undeniable, although some may feel disappointed that it is not nearly as fleshed out. You'll spawn in your world and from there you're pretty much left on your own devices. You'll have access to a magical briefcase that acts as both your menu, your inventory, and your guide. I recommend you check out the objectives tab in the briefcase if you're looking to get to grips with how everything works. It does a good job of helping you create the tools you need to make the most out of this world. Once you have those tools though, the rest is up to you and this is where the game could really shine or fall down depending on what kind of experience you are looking for, which is what makes this game difficult to review. There's no story here to progress, there are no enemies for you to fight or defend against, it's just you and your creativity. There are deep caves for you to explore and an infinite world for you to build upon, but if you're someone who prefers structure in your game, you may become bored easily and be disappointed. However, if you just want a relaxing zen-like experience where you can build and explore to your heart's content then you may find this to be one of the PSVR2's best titles to date. There may not be a whole lot to do in kube, but what's here is done very well. Take for instance the crafting. In order to craft you have to find the recipe, which are these sheets of paper which are very easy to find that float around in the world. After that you need to mine whatever resource is necessary to craft as usually wood and stone. For wood you'll need an axe to cut down a tree, which you do by striking it three times in the same spot which is a little harder than it may sound and introduces a skill element into something that is usually fairly brainless in a game like this.   When you have your materials you check your recipe to basically get a blueprint of how you make your isam. Now unlike in Minecraft this is done physically as you attach the materials together into the correct shape. It almost feels like you're playing with Lego or something like that and it's quite enjoyable especially for the more complex creations like a furnace for example where you need to join like AC plus pieces together. It's a system that demonstrates that this game is taking advantage of the ore as a medium. Recipes range from the tools you need like axes, shovels and pickaxes to home decor like chairs, tables and picture frames but if you want more options you can head over to the mods section in the menu and choose from a list of community created mod blocks to download to your game a feature that not many PlayStation games can brag about. Speaking of options you've got a decent selection here on how you want to play you can play standing or turn on a seasoned mode which allows a crouch toggle. You can also turn on smooth turning and there's both smooth locomotion and teleportation available as all times. The teleportation option can come in handy as there is sadly no jump button at least not that I could find but the sessings don't stop at view or comfort. You can decide if you take fall damage, if deer turn into fireworks, if shot with a bow and a side nose the rabbits do not turn into fireworks if you shoot them you just feel bad about that if you try it. You can even select how long days and nights are and more. Multiplayer is on the roadmap for cube viewer that edition alone would really enhance the experience here other features planned on the roadmap like combast could also do the same so it's very possible that cube would be a title that gets better with age and broadens its appeal as these features get added until then for 30 dollars it's going to be up to you to decide if this kind of experience is worth it to you if you're able to find enjoyment in gathering resources and building things in a stunning world and peaceful environment then it's easy to recommend if you need something more structured or action packed then this may not be for you as someone who personally never enjoyed a game like Minecraft I can't help but feel a pull to return to cube not because I want to build anything in particular but just because I want to be in that world a little while longer


Everybody forced here. We are ripping some city and basketball on its release day 21 22 canini of the city and basketball hobby six Box number one. This is a Picker team style Let me go ahead and read off One second Alpha ties there we go. So we've got 30 teams here Aaron L Celtics Adam K Pistons Alex M. Jazz Boja B. T Wolves Brian B. Bucks Carson C. Nick's Chen-Y blazers Chris J Rockets Irvin S Spurs George K has the Raptors Houchian with the Warriors Hideki Clippers Hung Y Bulls Jake O Nuggets Jason T Pelicans Kai H Nets Kenneas Mavericks Quote Quotung C with the Grizzlies Kieran Hornets Michael C Kings Michael V Sons Mitchell H heat Raquel magic Roderick you Lakers Ryan s Hawks Sam a thunder Sean T wizards Shijie Pacers Stephen R. Cavs and Stephen G with the 76 years. Thanks everybody and good luck All right, so group rate checklist didn't have one up, but I do have the cardboard connection check But yes answer your question baseball will still still happen here, too But it'll be like different offerings. So more of the base heavy will be done on the baseball channel We'll still do high-end baseball on the main channel. Don't you worry guys? But yeah, well sometimes we'll have two streams going at one time. That's exactly how it'll work It's just like when we let's just like late in gaming and then late in sports cards essentially There we go. I do I love the pink. I love the pink. Here we go. All right Let's see we got a nice base to start here Jalen Green rookie base for the Rockets Now that we're on this now Russell Westbrook for the Lakers Okay, so two base just making sure that we've got base here should be three base and basketball And a Chris Haps for Zengas for the Wizards All right first hit goes to the 76ers rookie Jersey auto Jaden Springer one of the very last teams purchased He goes six is 24 49 on the purple etch. I think there were second to last team on this case. I'm not mistaken Clippers now Purple etch rookie Jersey auto Brandon Boston, Jr. I love these designs man City and always looks great No exception here seven of 49 on that one Clippers and parallels now Wizards Kyle Kuzma orange numbered 43 of 50 Kyle Kuzma and a magnitude insert Damian Lillard Blazers Indian Lillard magnitude numbered six of 99 Blazers all right moving along here Start with our three base Jalen Green or for the Rockets rookie there others at Russell Westbrook Lakers the same base Yes, same same three base in the second box It must be collated together volcanic auto Reggie Theos bowls volcanic auto Reggie Theos bowls nine of 149 Yeah Very nice orange rookie Jersey auto bowls. I don't do soon move Sweet one Chicago that one's the number to 13 of 25 The orange etch Sweet IO magic green rookie Jalen Suggs There we go 18 at 25 on the Suggs. That's a nice so numbered one for you Orlando And a Pacers rookie purple Isaiah Jackson that one's numbered 33 of 80 No, 99. Okay, just thought I read it wrong then Pacers Isaiah Jackson rookie Yeah, we're all very excited to have Matt back breaking He's excited we're excited Awesome to start a new channel man a lot of work, but it's awesome. Got a Raptors base Pascal Yacum 76ers Joellen bead and a spurs Devon Bissell Cavaliers auto is Brad's already Brad Dorothy is at orange. It's 29 of 50 Cavaliers Wow, dude Wow Warriors Green auto Steph Curry Yeah Number 12 of 15 Big-time hit dubs With the chef Curry Who's got a man? Wow, dude Warriors how she in W There you go, buddy big-time chef Curry Heck yeah, man One of the players of the generation for sure 12 of 15 love the design this year Love the design on all the cards honestly Bulls purple Alex Caruso. Oh, wow, that's cool to 69 of 99 of the Caruso and pitch black Heat Tyler hero of the pitch blacks 86 of 99 Every release day every release day man you hit a big card How she and says he loves me in twitch chat Says he loves me Falling for pulling in the state it does happen to have things move quickly when you call people step carry Bulls Nick butch of itch bucks Bobby Portis and Pelicans rookie Herbert Jones We got Hawks Bogdan bug Donovitch on the galaxy auto Number 67 out of 149. Whoa Didn't see him on the checklist earlier Magic Stevie franchise auto Steve Francis Wow, that takes me back right there 32 of 149 Steve Francis Part of that T-Mac trade was Kelvin Kato Kevin mo Kelvin Kelvin Kato Kevin Mobley. Is that his name? Oh, no, Catino Mobley Catino Mobley and Steve Francis for T-Mac and I might have been it Got Gary trench junior Raptors purple numbered 26 of 99 and Volcanics these is described as a super short print in the checklist Raptors Fred van Vleet of Volcanics die-cut super short print it says on the checklist Sweet van Vleet as Brad would say Vleet would make Yeah, so yeah, the checklist does say the Volcanics is super short, but I guess we'll see how short print it Maybe like case hit or not quite sure it's Volcanics and there's another one We shall see All right base carts 76ers Tobias Harris Nets rookie Cameron Thomas and a Mavs Tim Hardaway, Jr Quentin Grimes beautiful patch on the rookie auto here That is a four color. That's technically gray So that is a four color Knicks patch on the rookie auto Quentin Grimes two of 25 nice hit Do the Steve Francis this this is like that same time period right here T-Wolves auto La Trelle spree well spree 28 of 50 Dude, this is taking me back straight to like 2004 When the T-Wolves won the Western Conference not one, but they were first place the Western Conference Going into the playoffs the one seed Oh, yeah Spree was one of my favorites growing up though really yeah 76ers purple Charles Barkley I think it's because of one of the video games I play with them all Round amount of rebound Chuck there numbered 83 of 99 and a tunnel vision Jammer and nasty insert 15 of 25 Grizzlies green tunnel vision T-Wolves back to first skin this year if you're willing to bet just come come back and I will bet me too You could you have a chance to make some money It looks like it looks like a little bit that Dero Anyway base nuggets Jamal Murray Hawks both on Bogdanovich and Thunder rookie Aaron Wiggins Yeah, should be same website I actually I'm honestly not that's that's a good question Daeron sharp rookie Jersey auto 13 of 49 For the Nets 13 of 49 Ricky Jersey Auto Nets Daeron sharp Cavaliers Wow, I have not seen an auto of this Cavs player before Rajon Rondo Aurora Auto Cavs 52 of 75 obsidian's all full of surprises today Sun's purple color match Cameron Johnson that one's numbered Wow Wow, I'll get to that one in second Supernova Cade Cunningham 47 of 75 pistons That is freaking awesome supernova pistons Cade Cunningham Do you guys like the die-cut supernovas from football or the non die-cut from basketball more? Big Cade right there will get a mag for you pistons and sorry guys I I peaked that one on accident Sun's Cam Johnson was 68 of 99. Sorry about that. All right Let's do a quick recap. I want to break good start to obsidian. I'd say so rookie Jersey are not Rickie Jersey But a Rajon Rondo Cavs auto Daeron sharp Nets Ricky Jersey auto a La Trolls free well T Wolves auto Quentin Grimes Knicks RPA Magic Steve Francis auto a Hawks Excuse me both on Bogdanovitch auto Cavaliers Brad already auto. I don't assume a rookie Jersey auto For the Bulls Brandon Boston Ricky Jersey auto Clippers a 76ers Ricky Jersey auto Jane Springer a Reggie Theos auto for the Chicago Bulls It's supernova insert for the pistons Ricky Cade Cunningham. That was 47 to 75 That's sweet and green Warriors auto Stefan Curry Number 12 out of 15 a monster hit for the dubs. Thank you very much everybody Six box number two coming up


Right. Thank you all for attending my talk this morning. And so my name is Nisha Huluhan. I'm a research scientist in IBM research in our Dublin lab here in Ireland. And on the AI privacy and security team I work on differential privacy. And what I'm going to talk to you about today is our work in the area of privacy preserving machine learning. Using the great power of scikit-learn and Python to help us on our way. So to begin with, the area of data privacy as we now know it can trace its origins back to about the 1960s. And a lot of tools and algorithms have been developed since then that have that are still in use to this day and are still very powerful for protecting data. But the the ecosystem in which those techniques now reside have changed a lot in the last 20 years. To the point where we now have a big risk of being able to link these anonymized data sets with external data sources and re identifying individuals in this and on in these anonymized data sets are exposing all the sense of attributes that we wouldn't have wanted to originally. There are many examples of these kind of attacks happening out in the wild and I've listed a couple of examples here. So in the first example with Netflix they publish a data set of anonymized movie ratings for their Netflix prize competition. They wanted researchers to improve their recommendation algorithm and they gave them some some data to use to help them. But researchers were able to link it with the publicly available internet movie database and expose individuals in the Netflix in the Netflix data set and expose the I guess the more sensitive ratings that they would have given to Netflix that maybe they wouldn't have given to a public service like IMDB. In the AOL case then they published a data set of anonymized internet search histories and reporters in the New York Times were able to dig into the data and re identify one individual in the data set and expose her entire search history, which I'm sure for a lot of us will be quite a sensitive matter. And finally then the New York City Taxi and Limousine Commission published a data set of anonymized taxi trip records a few years ago, and a blogger was able to attack the data set and link it with photographs of celebrities getting into taxis in New York City, and re identify and also link those records together and find out where the celebrities are traveling to and from and how much they tip their driver. I think in this case it's Bradley Cooper getting into a taxi in Manhattan. So all of these are examples of data sets that were anonymized using traditional methods published in the wild and then subsequently attacked. But the privacy risks of data extend far beyond these kind of examples. They extend to publishing simple statistics on databases and being able to do to run database reconstruction attacks on those statistics to basically reconstruct the original data set. And it also extends to machine learning models, I guess more pertinent to this talk, where you can reverse engineer the machine learning model to find out information about the original training data set. So, following on from these, I guess the failings of traditional anonymization in the current world, the idea of differential privacy was first conceived in 2006. And the key idea of differential privacy is that we introduce random noise to blur the data in such a way that we preserve the privacy of individuals in the data set, but still allow population trends to be accurately observable. And the unique selling point of differential privacy is that it is future proof. And by future proof, I mean that there's no data set that can be published tomorrow or in 10 years time that can undo the anonymization we've just applied. There's no data set that we can publish to undo the random noise that we've added. And that makes differential privacy the strongest privacy guarantee that we have at the moment. And that's why it's such a desirable area of research at the moment. So differential privacy also introduced the idea of a privacy budget being attached to queries. So we always talk about epsilon and differential privacy. And this epsilon is linked to the amount of privacy leakage that we get when we ask a query. Typically when you have a data set you want to limit the amount of privacy budget that can be spent or the amount of privacy that can be leaked. And that is encapsulated in this privacy budget. And it's very easy when you're running queries to keep track of the privacy budget and add them up and to give a total privacy budget at the end of the privacy budget spend at the end of a series of queries. So to look at a kind of a simple schematic of, of this, if we have a sensitive data set from which we're looking to extract some kind of knowledge or information in a privacy preserving way, which we then want to be able to pass on to a data analyst. Without posing a threat to the individuals in the data set. And we can extend this use case to machine learning environment where we have a sensitive data set being fed into a machine learning or AI algorithm. And for privacy's sake, we're going to inject differential privacy in some way into the training process, and then pass the trained algorithm onto the data analyst. And because of the guarantees of differential privacy. We know that there are mathematical guarantees on the amount that the data analysts can infer about individuals in the sensitive data set. And that gives us great comfort in being able to pass this information on to to an external source whom over whom we don't have any control. And at IBM research what we've done is we have built diffprivlib that does all the important stuff here in the middle it does the machine learning with differential privacy built in. We can train machine learning models with differential privacy on sensitive data sets, and then passing them on outside any sensitive or secure enclave to external parties. So our approach in building diffprivlib was to obviously to use Python, which is a very popular programming language for machine learning and data analytics. We wanted to use, I guess the de facto standards in data analytics and machine learning that are numpy and scikit-learn. And, and build upon them to add our different privacy capabilities. A core pillar of our work for diffprivlib was to ensure an almost identical user experience to that of numpy and scikit-learn. And that extended to having a lot of default parameter settings for the privacy aspects of, of these functions to ensure that anybody who was familiar with numpy and scikit-learn would automatically be familiar with diffprivlib before they even started using it. And I think by and large we've we've achieved that goal, which you'll see shortly, I'm sure. So in a nutshell, here we have some, a quick code snippet which, again, if you're familiar with scikit-learn this should be fairly familiar to you too. And so in a nutshell diffprivlib is a library for doing machine learning with differential privacy built right in. There's no expertise required. The user doesn't need to know anything about differential privacy or even data privacy to get up and running. Again, because of all the default parameter settings and the very similar user experience. It's open source. It's up on GitHub. It's free to use and to modify to your heart's content. It's easy to install with pip. And it's integrated again, as I said, with scikit-learn and numpy to get you up and running quickly. And finally, then it's easily integrated with any existing scripts. So typically, if you've a script that's running a bit of code for machine learning or data analytics in one or two lines of code, you should be able to replace the scikit-learn or the numpy functions with their diffprivlib equivalence and the script should run as it did before. But with the added confidence now of its satisfying differential privacy. So before I dig into some code, we just have a quick look at the four main modules of diffprivlib. The first of those is the mechanisms. So a differential privacy mechanism is the basic building blocks of differential privacy. They're the piece of code that actually add the random noise to the data. Typically, a user of diffprivlib won't actually come into contact with any mechanisms because they're all used under the hood in the tools and the models that we have to achieve differential privacy. In essence, a mechanism is just a probability distribution from which we use to add noise to the data. The next module then is the models module, which is the scikit-learn part of diffprivlib. We've a number of machine learning models from scikit-learn that we have implemented with differential privacy, including things like logistic regression, linear regression, PCA, K-means. And importantly, each of the models that we have inherits the scikit-learn equivalent as its parent class. And that gives us access to a lot of scikit-learn functionality for free. And that makes it much easier to use. Now, we do have additional warnings that we push from diffprivlib occasionally. One of those, including the privacy leak warning that you see here. And I'll explain more about that when we move on to the notebooks shortly. The next module we have then is the tools module, which is the NumPy part of diffprivlib. And this is a collection of kind of simple functions for data analytics tasks. That includes mean, standard deviation, some count queries. And importantly, the histogram function as well, which is a very important function for differential privacy. You can plot things like distributions and get counts of data sets in an efficient manner from a privacy perspective. And finally, then we have the accountant module, which is an accountant that keeps track of the privacy budget spend that I mentioned earlier. So you can see in this snippet of code, we have three queries run on a data set, each with an epsilon of 0.1. And then at the end, we add that up to be a total of 0.3, which is what you'd expect. We also have capability for using advanced composition techniques that if we give a little bit of slack in the guarantee that differential privacy provides, we can get a big benefit in terms of the privacy budget that we spent. So in this plot here we see that over 30 queries using what we call naive composition without any slack in our guarantee that we're spending more than 0.4 of our privacy budget. But having a little slack in that guarantee allows us to reduce the spend to just over 0.2. So in essence, this allows us to extract more knowledge for the same privacy guarantee. So I'm going to move on to some notebook demos now quickly, I think for the next 10 minutes or so. So the first one of those is a quick 30 second introduction to diff privilege. So this is simply we're going to train a Gaussian naive base classifier with differential privacy. We begin by importing the iris data set from using scikit-learn, we're then going to import our Gaussian naive base classifier from diff privilege and initialize it and train it using the fit method. And as I said before, we have a, as we saw before, we have a privacy leak warning here, and that's because we haven't specified the bounds hyper parameter. And this bounds hyper parameter ensures that the model is calibrated correctly. And without specifying it, what the model is going to do is actually going to read in that data, that information from the data set, which constitutes a privacy leak above what we would expect from differential privacy. That's why we have a warning here. And typically you wouldn't want this to appear in your scripts. So we'll fix that at the end of this script. As I also said before, each of our models inherits the scikit-learn class as its parent class and you can see that here. We can now that the model is trained, we can classify unseen examples, so we're going to use the test data set for that and you can see using the predict method. We have our classifications and we can then use the score function again from scikit-learn to test the accuracy of the test data set. And we're at about 77%, which is pretty good for the size of the data set. So in this particular cell, what we're going to do is we're going to run our classifier for various epsilon values. And in order to suppress our privacy leak warning, we're going to specify the bounds parameter upon initialization. And what the bounds does in this case is it specifies the range in which the values in each column lie so that the model can correctly calibrate the noise that it's going to add. Obviously we're going to have to add a lot more noise to data that's spread over a wider range and this parameter fix or source that out in our model. We're then we're going to plot the accuracy of this model across various epsilons on a log scale from 10 to the minus two to 10 to the two. Obviously because of the randomness involved there's always going to be some fluctuation the values. So these only give a single snapshot for each epsilon but it's still a good test to see how we're doing. And then we're going to initialize the classifier with these parameters the bounds and the epsilon value and then fit it and test the accuracy of the model. And as we can see here so for small epsilon which is again a small privacy budget, we're getting quite poor accuracy and very jagged curve. But as we increase our epsilon as we increase the privacy budget we're approaching 100% accuracy at the top. That's exactly what we would expect. So in the next notebook we're going to run through a differentially private machine learning pipeline. This time we're going to use the adult data set from the UCI machine learning repository. We want to import it using NumPy. There we go. And in order to construct a baseline we're going to train a pipeline using psychic learn to begin with without any privacy. And here we have the pipeline is going to be composed of a standard scalar which scales each column to have zero mean and unit variance. We're then going to reduce the dimensionality of the data set to have only two columns. And then we're going to feed that resulting data into a logistic regression and which is going to do our classification for us. In this case the adult data set is a binary classification task. And because different lib is limited to using the LBFGS solver, we're going to use that same solver for this non private version source that we're comparing like with like. So we're going to initialize the pipeline. And then we're going to fit it and score it using our training data set and test data sets. And we see here that we have a baseline accuracy of 80%. So what we're now going to do is going to turn this particular non private pipeline into a differential private pipeline and parameterize it accordingly. So if you go down here. So we're going to import the models module from diffprivlib and we have a standard scalar here correctly parameterized with the bounds. We have a PCA which is principle components analysis reducing the dimension down to two. And then we have logistic regression classifier again parameterized accordingly. For each of these we're going to set the epsilon value to be one third. And which means the epsilon value for the entire pipeline when we add it up is going to be one. So we're going to initialize that and we're going to fit and score it. And as we can see here we have an epsilon of almost 81%. So that compares quite favorably to the non private pipeline which was only 80.3%. It's not uncommon to see a higher accuracy from a different actually private model compared to a non private model because of the noise has been added. It reduces overfitting as one consequence which allows us to improve the accuracy as a byproduct. And in this cell then is simply doing a similar task to the previous notebook where we're running our model over various epsilon values. I'm not going to run that because it takes a bit too much time but we can look at the results down here extracting them from pickle. And you can see here we have again for small epsilon values for a small privacy budget we have very noisy results. But things start approaching our baseline accuracy at epsilon equals 0.1, which is a very good result in this particular case. And finally then the last notebook I want to share is a quick data exploration workflow with different live. I'm going to run all of this code. So we begin by importing numpy, diffprivlib and mapplotlib for all of our plotting. In this case we're going to use our budget accountant this time to take a keep track of our budget spend across the script. And we're going to use an epsilon of 0.04 for each of our queries. In this case so we have initialized our budget accountant to have a epsilon value of up to one. So here we're going to use the cover type data set from scikit-learn. And we're going to do a little bit of pre-processing on the data set here. And then we have our column names and the ranges of each column which are going to use later on when we're specifying bounds for each query. As I said before the histogram function is very important in different privacy and very efficient. So we can use the histogram function in this case to see, have a look at the distribution of the labels in this data set. So we can see here that approximately 50% of the examples in this data set are associated with label number two. And about 35% with label number one. Again, all of these queries have a little bit of random noise because of the differential privacy guarantees that we have. But for the size of the data set, these results are quite accurate and reliable. We can extend our analysis of the distributions of the data to the features of the data set as well. So this is all of the columns of the data set. Again using the histogram function here to access the data. And these are the results that we get so we can see there is, we can get a good visualization of the type of data that we're dealing with using these particular functions. And now is probably a good time to have a look at our accountant to see how much privacy budget we've spent so far. So we can see here we have a total spend of 0.52. And using the lend function then we see that we've executed 13 queries, which correspond to the 12 queries here and the one query previously. So we can also use two dimensional histograms to get even more insight from data. And in this case we're plotting the distribution of each of three features here, as well as their distribution of labels. And that's using the histogram 2D function again similar to the non pi equivalent. We can extend that to plotting features against other features again using the two different two dimensional histogram function here. So we're plotting the horizontal distance to hydrology on the x axis, and then using our colors using horizontal distance to rollways. And another way then to compare features on two dimensions is to use color maps, again which we execute using the two dimensional histogram. And finally then we have our more simple queries if we're looking to hone in on on specific features of the data using our mean variance count non and count non zero as well. And you can see then at the end we can examine our total privacy loss and if we've any other queries to execute we can use the remaining method to find out how much privacy budget we have to spend. So, before I finish here there's some additional resources for you if you want to learn more so all of our code is available on our GitHub repository on the IBM domain. And that includes all of the notebooks that I presented here today and other notebooks as well. So our documentation is hosted on read the docs. And I guess most importantly if you want to get started with drift privilege, then one line command in your terminal pip install drift privilege and you'll be away. So that's all I have for you today. Hopefully we'll have some time for some questions if there's any going. Yeah, we do. We have four minutes for questions. Great. Okay. I think we have any questions. Everything must have been perfectly clear. Oh, we have a question. Great. All right. Is it possible to set up differential privacy so that you could reverse it in the future if you needed to, or is it a one way process. So typically what you do is, you have the raw data set in a secure environment and you can publish differentially private statistics on that. There are other techniques. So for example, Apple uses what we call local differential privacy, which means the differential privacy is applied before the data even leaves your device. And that means that the data controller only ever sees random not randomly, or data that has been randomized. And in that case, you can reverse engineer it. But typically if the data is valuable, then you would keep a raw copy of it in a secure environment and only release queries on it using differential privacy. Okay, that's awesome. Also, just a little help for me. Could you and share your screen? Yes, I can. Okay, thank you. All right. So this is the next question. What happens if the budget account runs out? So the, in an ideal scenario, the idea is that you have a fixed privacy budget for a data set. And once the budget runs out, the data is destroyed. Clearly that's not realistic in today's world. So a lot of the time you would give, for example, the idea is that you would give a single data analyst a fixed privacy budget to spend on a data set. And once that budget has been spent, the access to that data set is revoked. So that would be the modern interpretation of that. Okay, awesome. So the next question, you are inheriting from SK learns classes. If they modify, how do you guarantee that your code maintains compatibility? That requires updating of the code as simple as so typically a lot of the time the last two, I think, 22 and 23 we've had to push out patches the following day for changes that cycle learn have made. So it's just an ongoing process of keeping it up to date. Awesome. What is the point of privacy differential? Could you be more specific and suggest a few using a scenario? So the, as I mentioned in the talk, the differential privacy was conceived because of the failings of traditional anonymization methods. And differential privacy isn't perfect, but it works very well when you have a lot of data and a lot of sensitive data and when, sorry, my train of thought. So there are very specific circumstances where differential privacy is very useful, but we still need to use our traditional anonymization methods to safeguard against data risk. Okay, that's awesome. I think right now we're out of time. Thank you for your talk. You can actually reach out to the breakout room. We actually have a few more questions you can answer it there. And also, this is for you.


It was given so it can't be taken you can't lose it because you didn't find it You didn't qualify for it. So you can't be turned down Since you didn't earn it You can't forfeit it. You wasn't strong enough to get it. And so you're not weak enough to lose it You can't hold on to it because it's holding on to you My wife and I went on a cruise and on this cruise all of our meals were paid for Breakfast lunch and dinner, but we didn't find that out until after we got back You mean tell me we paid for breakfast lunch and dinner Worrying about if we're going to have enough sometimes when it was already paid for What kind of trip is that having to worry about things like that?


I think lube is very important. When you buy lube for your partner, you are thinking of them, you're thinking of their pleasure, you're thinking of their comfort. You are seeking their consent to be intimate with them. And when your partner puts on lube in readiness to receive you, they're giving you that consent.


We open with Ms. Spittle trying to obtain information from Jane Woe about who she's been in contact with. And Jane is not talking to anyone. Jane is angry with Ms. Spittle for putting her into isolation. She thinks Ms. Spittle is the enemy. Since she works for those commies who arrested her because she was trying to be nice to someone, and how was she to know he was an undercover cop? All she was trying to do was give him a little taste of the good life. I know you came in as a Jane Woe, but I was able to locate your chart from your last incarceration. And you gave your name as Morning Glory Farthington. Which one would you rather be called? Um, but if you gotta call me something, call me Morning Glory. Well, Morning Glory, do you understand your disease? What disease? I don't have a disease. I've been tested and tested. Up the wazoo, had my HIV test, came out clean as a whistle. You're tuberculosis. Do you understand why you're being fussed over and why you're in this isolation cell? No, I don't have no stinkin' tuberculosis. I have a smoker's cough, you know? I wish your people would just leave me alone. I'm only trying to help. I want you to understand why you need to take your medicine and how important it is for us to get a good specimen from you so we can diagnose your disease. I told you once, I told you twice, I don't have no disease. I gave you one spit, I ain't giving up no more body parts. Well, we can talk about that later. Right now, I need for you to take your medicine. I want you to swallow all these pills. And then I gotta check your mouth afterwards. You can't make me take them, I won't. I know my rights. You can't force me to take medicine. I have the right to refuse. Hey, just leave me alone. I don't want to talk to you no more. Okay, you win. But if I call Ms. Secretion over at the health department, will you talk to her then? Well... Need your TB clinic, Ms. Lucretia Secretion, please? Ms. Mucosa Spittle calls the health department. She speaks with her friend Lucretia Secretion and they agree to meet with Morning Glory Farthington, a.k.a. Jane Woe. Ms. Lucretia Secretion arrives at the jail and tries to enter the jail with all of her tools. These include her scissors, a pocket knife, a pepper spray bottle attached to her key chain, and her stethoscope around her neck. Good morning. May I help you, please? Yes, I'm Lucretia Secretion from Beach County Health Department. I'm here to see Mucosa Spittle in medical.   You mean my pepper spray? That's exactly what I'm calling the listeners. My knife? Hello, Ms. Spittle. We have a Lucretia Secretion from the Beach County Health Department here. I'll bring her up to see you. Everything? Is that everything? Yeah, that's it. Follow me, please. Okay. In the medical clinic, Ms. Spittle and Ms. Secretion talk about Jane's incarceration. Ms. Secretion reviews the medical record and Ms. Spittle explains how long Jane Woe, a.k.a. Morning Glory Farthington, has been in jail. Jane, or should I say Morning Glory Farthington, is being difficult. She won't take her medication and I can't get her to understand her diagnosis, much less how she got it and who she's been in contact with. Well, it certainly sounds like you have a problem on your hands. But first, let me look at the cell she's in as she's been in negative pressure the whole time. Absolutely. I've checked them every day with the readout from those maintenance people and they check out perfectly. But I did notice that I got a blast of air coming from under the cell door a few days ago and I'm not sure what that was. That could be a problem. Let's take this tissue and check it quickly. First, we need to put a mask on. Do you have some? I've got these right here. Are these particulate respirator masks? Well, these are the ones the jail let me by. Do you have any masks that say N95 on them? These look like surgical masks. Oh, yeah. I have that one box that the representative from the company gave me. Some place in here in this drawer. I got lots of stuff in this drawer. It's okay. There's that slinky that it gave me. Extra heart just in case. Liver. Never can be too careful. Oh, wait. What is this? My extra set of lungs just in case. N95. That's it. That's what we need. That's what we need. That's the ones that you make exterior staff wears whenever they go in the cell with a TV patient or talk to a TV patient. This will help protect them from getting tuberculosis. These surgical masks just don't do it. This is what you need the inmate to wear whenever they go out of the room. Let's go ahead and put these on and take the tissue and go check out that room. You have positive pressure here. That means that all this bad air is going into the corridor and circulating throughout the whole area. Those people who have been working in this area have been exposed. It depends on how often and how long they've been working in the area as to how much they've been exposed. We'll need to test your infirmary staff, the deputies, anyone who is in here. Then we'll need to do a follow-up retest in 12 weeks to see if anyone else has converted. You say the cell has been working in the past? Absolutely. But like I said, about four days ago I did notice that air coming from under that door. Wait, I have an idea? Deputy, can you come open this cell door for us? You're going to need to put this mask on any time you open that cell door. Do I have to wear this thing? Yes, you do. It's a special N95 mask. It'll protect you from any germs she has. Pinch the nose tight. Good. Okay, buzz us in please. Stand away from the door. Ms. Farlington, stand away from the door. Ms. Farlington, what did you put that up in advance? I think it's about five days ago. You all remember when I needed that extra blanket and I kept complaining? What am I to do? I'm freezing to death in here. Well, you're going to need to take it down. So if you would take it down, then I'll come back and check on it, please. All right. We really need to clean those vents and we're going to need to include those vent checks and the cell checks every day. Morning, Glory. Since we're here in your cell, I'd like to ask you something about your tuberculosis. I understand you've had a cough for quite some time. Is that correct? Yeah.  And when was that? Well, it was just around the time I got arrested. You know, I was at the bus stop.  Can you believe that? Honest, I was on my way to the doctor to have this looked at. And when was that? Two weeks ago, four weeks ago? Oh, let's see. It was about a month ago. Okay. Okay, do you understand why we had to isolate you? Why you're in this cell by yourself? Yeah, because I'm obstructed. I might make somebody else sick, but heck, that's okay with me. Actually, you're in what they call infectious, meaning you could give your disease to others by just coughing, singing, laughing, or talking. Anyone who shares the same airspace with you could become infected with tuberculosis if they stand in confined space for any length of time with you. Well, good then. I've infected everybody so I can go, right? No, you have to be isolated from everyone until you start feeling better. Even if you get released from jail, you still need to stay away from others until you've taken your medicine for a while. And then we are able to check your sputum to be sure it no longer has any TB germs in it. Remember the sputum specimens that we've been trying to get from you in the morning that you just won't give us? That's what she's talking about. We only need three specimens in a row without those TB germs. And after you've taken your medicine for two weeks, that's when you can get out of here. Well, that's part of it. But we need to be sure you're feeling better also. We need to see that you are coughing less, your appetite is improving, and that you're feeling better before we can take you out of isolation. And it's really important for you to take all your medicine every day. Make sure that you get better. You will need to take your medication for about six months to be sure that we get all of the TB disease. Whoa, this is way too much for me. You know, I know my rights.  They want to have them on an empty stomach. Hey, I got to have food with this. Well, if I get you some milk or some food, would you take your medicine then? That's not a good idea. The medicines need to be taken on an empty stomach, or maybe with something light like applesauce, jello. Something like that might work, but nothing heavy, no heavy foods. It cuts down on the absorption of the medications from the stomach, and it's almost like she's only taking half the dose. Well, that's good. We can double up on her medication and then give her the milk or the boost. No, I'm afraid that won't work either. You're going to have to trust me on that. The medication just does not work that way. You need to have her take something light like applesauce or jello. Hey, applesauce, jello, strawberry jello. What about that? That would work. Will you take it with that? Well, we can't promise anything, but I will see what we can arrange with the kitchen. I just can't guarantee anything. Right now, I want you to take all of your pills, and we can give you something for the nausea if you continue to have any. I don't think so. You know, I'm going to refuse right now, but I don't know, maybe later. Well, of course you have the right to refuse, dear. Actually, Morning Glory, you don't have the right to refuse. Did you know that tuberculosis is considered a public health threat? And because of that, there are special laws that say you don't have the right to refuse examination or treatment. We can actually hold you in jail or put you in a special TB hospital under court order and have the judge state that you must have directly observed therapy. That means that someone must watch you take your medications and you cannot leave until you complete treatment for your tuberculosis. And the doctor says that you are cured. If I know Morning Glory, I would say watch her swallow her medications. Never mind just directly observed. Very true. Taking them and swallowing them are two different things. So, will you take your pills? Oh, man, I guess if I have to, but I sure as heck don't have to like it. Morning Glory, we need to find out who you've been in contact with since you've started with your cough.   I'm tired. I'm not going to tell you nothing. I'm just going to lay down and I'm going to rest and just leave me alone. I understand, but I'll be back. I do need to talk to you some more, but another day will be fine. If you get released from jail before I return, you must contact me at the health department. If you don't, we will come looking for you. Let me give you one of my cards. If you get released from jail and have problems getting to the health department, call me. I can arrange transportation for you. Well, I guess that'd be all right if you came back, but please get this lady out of here. I don't want to talk to her no more. No problem. I'll come back when nobody can hear our conversation. That'd be fine with me. Morning, Glory. You know that won't happen. You are not allowed to speak with anyone alone. You have to have a deputy with you at all times. Don't you remember? Yeah, but shoot, I thought maybe they could bring me some food or maybe some clean underwear or something. Absolutely not. You know that's against the rules, but we'll talk more later. You go ahead and rest now. Back in the medical clinic area, Ms. Biddle and Ms. Secretion discuss implementing a contact investigation.  I don't know how I'm going to find out who she's been in contact with. She just won't talk to me at all. Well, you can start by locating who she's been in close contact with while she's been in jail. Everyone who was in the cell with her, all of them are included. Since she's been coughing the whole time she's been in jail, you will probably need to know everywhere she's been. And since the air flow has been bad in the isolation room, you probably should just test the whole jail. It certainly won't hurt. I wish reading in this here MMWR book about contact investigations and it doesn't say anything about jails. But I thought that since jails is something I know a lot about and contact investigation is something you know a lot about, we might be able to put our heads together and come up with a list that might be doable. I think that's a wonderful idea. We'll start with her close contacts, those people who have been with her for long periods of time. This is the beginning of the concentric circle contact and investigation approach. Can you identify those people and get them tested? I'll have to get with the classification people and I'm sure I'll be able to check her chart to see what healthcare workers spoke with her. Oh no, I'm going to have to get with the jail administrator and the lieutenant. Let them know and see what officers worked on her housing pod. Is that enough? It's a great start. I'll also need a list of everyone who was in contact with her who has been released to the community so I can follow up on them. I'll need addresses so I can contact them to have them come into the health department for a risk assessment and testing. That reminds me. I'm also going to need to put a list together of all the inmates who have been in her cell that have gone on to prison. Boy, this is going to be a lot of work. When did you say this needs to be done? Well, the guidelines state that it should be initiated within seven working days of identification of a suspect or an active case of TB. We can come in and help you if you need us. Oh yeah, absolutely. The hardest part's going to be getting those lists put together. Actually, the hardest part will be the 12-week read test because people aren't always where they need to be. Oh yeah, I forgot about that one. What about the ones that get released after the first skin test? Well, that's why we need to have addresses, not just names and dates of birth. It's the health department's responsibility to follow up on those people who are no longer in jail and are living in the community. Okay, I'll start cracking them right away. Boy, what a nightmare.


Note that there's some introduction or welcome message shown here. It actually gives us some useful information, but we'll come back to that later. When you log into a machine, it shows some welcome message. And in this case, there's some important information here, but we'll come to that in a moment. First, let's just test. When we set up our droplet, I chose the lamp option, Ubuntu using lamp. We'll automatically install the web server. Let's test. On your computer, open your browser and visit your website. How do you visit your website? So open your browser on your lab computer and visit the website of your VPS. Note, our server doesn't have a domain name. There's no www.abc.com. It's only got an IP address. You need to type the IP address of your server into your web browser address bar. So you need to find your IP address. I'll use ifconfig. ifconfig.et80 to get the exact one I want. Copy and paste my IP address into my browser. Enter. It shows me a web page. If you get to this web page, the default web server is set up. The web server is called Apache or Apache version 2. This just gives you some configuration information about the web server. If you don't get that, you have a problem. Anyone? We don't want this default page. We're going to delete it. In the future, you can create your own web page to go there. But we'll create a placeholder. So where are the web pages on your computer? If you now change into the directory, slash var, slash www, slash html. Last week, we introduced some of you to the command line and we saw CD was the way to change a directory. And this changes into this directory under the root of the hierarchy, var under that, www, and then html. And to list the files, ls. And we see there are two files. The base of the web server, the base directory. So when we visited that web site, the file that was displayed, and you can check the contents, index.html. You can open up index.html in an editor. Or you can, oh, not yet. You're too far ahead. So you can open up the index.html in an editor and see the actual html and notice that there's a lot of CSS there. Scroll down and see it's that web page that was displayed when you visited your server via the browser. That is the actual web page. We don't want that one. Let's delete it. To delete a file, we use rm. rm removes the file. We don't want that default one. Let's get a better one. rm index.html and enter index.d. rm index.html, enter what happens. What's this? A warning message. Do you really want to remove this file? It's protected. Yes, I do. I cannot, permission denied. So the file is still there. You couldn't delete. I wanted to delete index.html. It gave me some warning. And then it said permission denied, which is an error message. You couldn't delete. We're still there. This is due to the user. By default, the web pages in this web directory are only accessible by the administrator or a special type of users. I am not. I'm logged in as Steve, not the administrator. So I want to switch and delete this file as the administrator. And the administrator in Linux is called the super user. So I want to do this command as the super user. And we hit sudo rm index.html. Do this command as super user. Run as administrator. It will ask you for your password. You need to supply it once, and then it will save it for a while. And then there should be no warning messages. And now the file's gone. We've deleted the file. While we're here, let's delete the info file. It's just a PHP. It gives us some information about PHP. We don't need it. sudo rm. So if you need to run a command as the administrator, you proceed that command with sudo. If we didn't add you to the sudo group, it wouldn't allow you to run the command as sudo. And now let's add a new web page. And again, to write a file, we'll need to use sudo. sudo nano index.html. That is, open a new file called index.html in my text editor nano and do this as the super user. sudo nano index.html. And create your web page. Everyone knows HTML. If you're lazy, then copy and paste it from my web page. And today I'm lazy. Create your web page and maybe change the title or the content. Just a simple web page. Copy and paste and put your name in it. So you know this is your website. Save the file, control X. Control X, yes. And then enter. And then open your browser and visit your website again. Just to check that your web page is working. So once you can visit your website, save your file. We now have the index.html and open your browser. And in my case, I'm going to refresh. So you have your own website. And I think that's all we're going to cover regarding the web server. I'm not going to show how to create a website. I think everyone, if they want to create a website, they will find out how to do it if they don't already know. You can do a very basic website, just some HTML. At the end, if we get time, we may show using PHP in a database. This PHP is installed. MySQL database server is installed. We'll set that up in a moment so you can create dynamic web pages. Or if you want a more advanced website, you can install things like WordPress, Joomla, Drupal or other software that creates a website for you. Or you can just create a very simple website where you put a list of files in this directory and it gives you access to those files. A very basic file sharing website. Make sure you refresh to C. Let's go home. Cd, what's next? Bring back my instructions. The MySQL database server, especially if you create dynamic websites, is useful to have a database server. MySQL is a very popular free database server. It's already installed. We have a LAN package, but we need to do some things to set it up and we'll create an example database. So let's do that now. Make sure you're home. Go home, remember just Cd. MySQL, the database server has its own concept of users, including a root user. But be careful, MySQL users are separate from our operating system users. So there's a root user on my operating system. There's also a root user for MySQL. They're completely separate, even though their names are the same, different passwords, different system. To set up the database server, we need to know the root password of MySQL. And it's actually shown in the welcome message. And to see the welcome message, it's called the message of the day. And the message of the day is installed in this directory and we can display it, or the end of it, the tail of that message of the day. Cat, ETC, MOTD dot tail. And you'll see something about MySQL in there. This was created by the digital ocean software when it created the droplet. It's not always the case when you install an operating system. Note the password. Note and remember it. So in my case, this QNRD, yours will be different. Now let's change that password. MySQL admin, minus U, the root user, minus P, and then password. This is a program to administrate the database to change the password. Go on. What are you trying to do? It's not there. So if you want to add a new file, sudo nano index. sudo nano. And copy and paste from the website and say, MySQL admin allows us to change some system, some database server parameters. This is going to change the password. Enter the one in the message. This QNR, yours will be different. And now choose a new password for the root user. Now we've got our third password. Again, it's good not to use the same password. Don't use the same password as the root user for your operating system. That makes it a little bit inconvenient. Now you need to remember three. Don't worry, there'll be another one added soon. There'll be four. Sorry, I can't remember either. What have we got? So we changed the MySQL root user password. Not the root user of the operating system. Sometimes it's useful to write that one down if you need it later. Let's remove this message, this welcome message. The welcome message is only there for the startup. Let's remove it. So others don't see it in the future. Pseudo, RM, then the file name. Keep going. There's a nice software that is mentioned here, MySQL secure installation, which will do a few things to make our database server a little bit more secure. Let's run that. Run it. Pseudo, MySQL secure installation. It's listed in the welcome message up above. It's just a special script to clean out the database from some test databases and check a few things. You can copy and paste it from the welcome message. And I'll ask you some questions. Enter the current password for root, the one you just changed it to. And I remember mine. Do you want to change the root password? No, not again. I've just changed it. No. And the others, yes, yes, yes, or default. Remove anonymous users, yes. Disallow root, login, yes. Remove test database, yes. Reload, yes. Done. All right, a bit fast if you didn't follow then, but this just adds, makes it a little bit more secure than the database server. Now, let's create a database. We may get a chance to use it later, but let's just create one quickly. We'll need to create a user as well. So we have the root user for MySQL. We'll need to create a new user that can access a particular database. MySQL user root minus P means we'll prompt for the password, give us the password. So enter the MySQL root user password. And now we have a MySQL prompt. And those people that haven't taken database systems with Dr. Tanner up, if you haven't taken it, you'll take it probably this semester. I look at most of you this semester. Yeah, this semester. And you'll learn all this. Okay. If you don't know, then some of it's quite obvious. Create a database, give it a name. I've just copied from somewhere else. Create database called example DB. You can call it something else. Doesn't matter. And now create a new user that has permissions, all permissions on that database. And you can, again, you can copy and paste from the website if you don't want to type this. You don't need to know the full syntax. Grant all permissions on this database and all the tables to a particular user. And now we're going to add a new user. We have the database root user. Let's add a new one. And for me, I'm going to call my database user student. You can do the same or you can use a different one. And student is identified by some password. Well, I can't remember all my passwords. I'm going to set it the same. Grant permissions, all permissions to this database to the user student who will use the password student. Okay, not very secure, but it's not so important at this stage for our server. And you need a semicolon at the end. So be careful. There's a semicolon on the end. If you press enter before that, then you'll have to add the semicolon. Granted some permissions, so we must update them. It's called flush privileges. And then quit our database, which means there's a database and we're not going to look at it at the moment. Maybe we'll get time at the end to use it. But this is just a quick example of creating a database and creating a user. Questions?


Welcome to Toffy TV, it is the Everton News Daily. Luca Dean has signed a new contract with Everton, keeping him at the club until June 2025. The French left back has likened this bond with Everton to an amazing wedding, amazing marriage. It's great news, Everton's week seemingly getting better and better. Obviously we had the Derby win on Saturday, we've had the Bramley Morddoch planning application approved unanimously by Liverpool City Council and now Luca Dean has committed his future to Everton Football Club. It's brilliant news and it's a nice one Luca, that's all I can say on it, fantastic news. Just on Everton Stadium, the local city council has forwarded the planning application to the national government for their consideration. It was unanimously passed by the Liverpool City Council board yesterday and now the government has three weeks in which to give Everton an answer. Basically the magic date is Wednesday the 17th of March so all eyes on that date now for Everton Stadium. Once that's passed there, Everton can get the spade in the ground so to speak and get on with building the new stadium at Bramley Morddoch. In regards to the stadium, Everton have announced that they have a season ticket waiting list of 17,000. Evertonians have repeatedly stated including myself that the capacity at Bramley Morddoch of 52,888 isn't high enough and this 17,000 on a waiting list plays into that as well. It's a case for the club of getting the planning application approved and getting on with the build then you can alter it. It's exactly what Spares did when they got their new stadium. I think their capacity changed three times during the build so Everton have said that there will be room to increase it through safe standing. Who knows but I think personally it should at least be 55,000 and maybe with this season ticket waiting list continuing to grow Everton may actually look and increase it so fingers crossed. More news today that Everton are working on a deal to sign defending Max Arans from Norwich City. Genes for a bitio Romano has said that work is underway for Everton to secure the 20-year-old right back this summer. Arans has been on Marcel Brander's wishlist since last summer and could cost the Blues around £30 million. It could follow Ben Godfrey of course from Norwich City to Everton. Fingers crossed that to go it. Everton also today linked with a move for Gianluca Mancini, the Roma defender that's according to the Italian media and Everton also linked with a move for Real Madrid winger Lucas Vasquez this summer. That is it, make sure you give the video a thumbs up, subscribe if you haven't and if you want more videos join us over on Patreon where there is daily live videos. See you later.


Oh my God, it's a giant. No, no, no. Welcome back to the channel, everybody. Right now I'm going to pick up my buddy, Trey at the boat ramp, and we're going bass fishing, baby. And today's video is sponsored by Carl's. I am stoked about the action in today's video, guys. It's quintessential springtime bass fishing. You're gonna love it. And some of the things that we're using today are what you would think of when the water starts warming up. We're using a frog, we're using square bills, which I haven't used in a while, square bill bites heating up, shad spawns early morning, and we're using a lunker logs, things like that to target shallow bass that are feeding on shad and just getting defensive around their fry, summer spawn, summer post spawn. You can find all this stuff at Carl's. Shopcarls.com has the lowest prices, great customer service, and fast shipping. So they have a huge selection of not only our baits, but also rods, reels, line, terminal tackle, all of our new drops, they've got it at shopcarls.com.  If you wanna give Shopcarls a little test dangle, you can start a free trial and start taking advantage of these big discounts across the board. So shopcarls.com, link down in the description, use code GOOGAN10 and you will get a discount on your first order over 25 bucks. So you guys have seen Trey on the channel before. He's my buddy, he's my tournament partner, he's also our senior vice president of product.  I was already on the water in the morning, crappie fishing, you guys saw that in the last video and I kinda had an idea that there was some bass up shallow. So we just started getting after it up in the shallows when I was picking up, get out your moving banks folks. Overcast, windy, we're breaking out spinner baits, square bills, swim baits, all that fun stuff. And I'm seeing a lot of shad up in the shallows getting pushed up against some areas with some rocks and some laydowns and things like that. So it's setting up for a good moving bait bite. Did you fish all the way back over here? No, I haven't fished any of this. Basically stopped at the marina. Got good depth, my God. Perfect. Classic random ramp fish. There you go, there you go. It's like I willed it into existence. You did. That's a good one. What ramp did you bat? Bat. This barge ramp looks like a nice boat ramp. Bass, it's a piece of cake. It's got their goblin shaft and loaded up on it nicely. You've been on that little just plain white saucy here lately, or? It's been a month long program for me out here. Oh, I got one on the square bill, dude. Look at this. This feels weird. I got it on a noodle of a rod. This could be a barge, something here. It's just about to say one's last time you caught one on the square bill. Oh, big bass. Here we go. Here we go, baby. Oh, big cat. I haven't caught a fish on a square bill in a long time. Right there on the corner, it's trying to shake that thing. Look at that thing. This is a rather large robber. Pretty good. Pretty good. Perfect. Oh, he went for the back grab. He got the big hands, bud. Look at the size of that thick girl. Look at that. Shoot. That's what I'm talking about. Look at that. Banger. Banger down the hatch. Maybe this is our lake. Surviving on robber.  I haven't caught a fish out here ever. And I get with Trey. Individually, we're not good together. We got a survivor. That's a good one, man. I think that one might be a hair over, bud. There's a juicy one. I'm gonna say maybe six, five and three quarters. Still a healthy looking fish, so let it go.  Put it in the fryer, but. Back into the shallows. I usually say back into the deeps. Back into the shallows you go. It's great on camera. Doesn't take himself too seriously. Doesn't think he doesn't stay in there. Look at that on the tree. Good. Another tasty one. I mean, our square building, man. Square building into the wood cover, my gosh. Oh no, don't get on that thing. Whatever that is, hold up. He's giving me the old seesaw. There he is. Oh, you tried to do it. You know, just a second sample of that rod will be significantly more effective. Chunky butts. Prespawner, baby. My goodness. Well, this is quite the situation we have here, folks. So far we've got a three, a four and something and maybe a six, like this thing's fat, dude, this thing might even be bigger. Haven't picked up a square bill in a long time. That's just getting her done. Shoot, baby. See ya. Look at that, beautiful. Mind if I go give her the switcherilts? These are some of the old protos. That got a crappie. That tells you how many of them are in here, dude. Cleco? We're seeing those plecos, those armored catfish. Oh, that guy just made himself into a meal. Join the collection. Tasty one. The crappies. They've all been on like key pieces, though. The bigger trees. Eat me. We'll biscuit eater right there. Sir, eat your food, Tina. A little whackfish. Strong. Just looking at some crappie on the scope. What? You know, these pesky bass. They just keep getting in the way today. Got it down. Goodness. Love to see it. You just took it deep. Using that little finesse hook here, guys. Little finesse hook that my buddy Trey fashioned up for these type of situations. I like tackle. Very tackle junky. That's a beautiful fish right there. Nice. I'm going to say it's a three pounder. He's got a nice big belly on him. Awesome. Little screen. Like you said, today's one of those days where a cave troll is going to bite. So you've got to feed the trolls. Big green trolls. Didn't touch it. Trey just had a nice fish on his frog. How are we going to get him? Well, I'm a wacky. I'm doing a little Texas line size here. I've got 15 pound. I do this on lakes that have the cave trolls living in it, just in case. And I'm glad I've got it on here. Just the last couple got just dropped off again, it's 10 foot. Oh, oh, got him. No, the tree. I thought he had it. Yeah, it sucked it down. Getting in the zone with that thing. I'm feeling sort of a jig throw in here. Yeah. Oh, get him. Yes, sir. That is a, oh my god, it's a giant. No, no, no. Get him out. No, no, no, he's there. He's there.  There you go, buddy. Holy s***, what's up, dude? Oh, yes, dude. Holy s***, dude, look at that. Dude, up there in the dirt, baby. That was one of the best frog bites I've ever seen in my life. Oh my god, in the dirt. Drake, you the man, dude. You the man. Look at that thing. That's a monster. I think that's my biggest frogfish ever, man. Oh my god. Do you want to put him in the wild? Yeah, get a weight on him, possible? Yeah.  Man, I haven't had a big bite in so long, too. Like, I've really been struggling. Got the good ones. That, my friend. We're going to weigh it. I thought, I thought when he got in there, I was like, oh no, don't get up. I just started going straight in. I'm not sure what the hell. He's cracking up front. We still got a 360 note? Oh yeah, we're good. I mean, it looked like a 10. One of those bites, too, were completely shark tip or tail. And I was like, oh no. Oh god, what discipline not to set the hook until it was time. That sound will be in my dreams for a while.  Just right in the nose, too. Just like that. Back to the bushes. Dude. Major props. Awesome. Major props. That took some skills. Through that thing past the tree right there, up into the crevasse, and then had to steer it around the tree twice. Had a little beef at 65 pound braid. You got to have it when you got cave trolls out there. Just had a goose come up here like he was going to attack us for some reason. I bet that thing would be delicious. Is that the biggest frogfish of your life, baby? Pretty close, man. It's up there. Biggest frog about of the year for sure. Biggest frog I've had in many years. At least five plus years. Captured. Captured on camera. Smash the like button. Yeah, this is frog only. Yeah, back there. Is that even possible? Oh my gosh. That's a giant. Oh my gosh, Ray. Holy moly. That was a big one. Just working that filthy. This is actually a frog that I had when we were testing out the softnesses of the bodies. Trying to get the right softness. And so it doesn't have to eat me on top of it. It has no color.  It tended to be pretty good. Today's one of those white frog days. Just four pounds. What's quite as big as that? Seven or eight? Well, folks, we're here at pretty much the end of our day. We just rolled into like a little pond. Backwater pond. Ray saw a herring land back here. There was a season there. Check it out when it landed. Shad went everywhere. Two frog bites. One was over five. The other one was four. That by far has been the bait of the day to catch the big one. I haven't even picked it up. Ray's been throwing jig and a frog. I've been throwing crankbait, wacky rig, just fishing tight to cover. These bass are tight on stuff. This is the time here where they start to get on that frog. It's beautiful. They got two foot water, two foot high. There's just a bit of water on some of these things. It doesn't take much. There's a lot of willow trees around us. Bugs live in these willow trees. They fall out, bluegill, on those things.  Big bass will hang out from spawn through May, June, sometimes late summer if they've got cool enough water. If they've got enough water over their head, got enough oxygen, they stay in there where those bluegill are hanging. Just a fun, fantastic, fantastic day out here on the water with my buddy, Ray. This is my best day on the lake. The last video you guys saw was me crappie fishing. That was this morning. And then I picked Ray up in the afternoon. And it's just been, we just switched the bass and started cracking them as well. I think we've, what do we got here? A 25 pound sack. Something like that. 23 to 25. Oh my gosh, another another big one. So much fun today guys. My favorite day on the water this year so far. Slammin' crappies, slammin' bass. Watchin' my buddy crashin' on a frog. I'm gettin' juicy ones on the square bill. Gettin' to pitch to specific objects. It's just fun times. So go ahead and smash that like button. We will see you on another outdoor episode here on LFG Fishing TV. Godspeed, God bless you, and we'll see you on the next one.