One of the big challenges that I face when I'm doing a data analysis is figuring out where to do the heavy lifting Sure, there's a lot of steps in an R pipeline that are run really quickly and they they don't take much effort at all to run There's other parts that might take hours maybe days to run Those are things that we don't want to run many times, right? So if something's really quick, I can run that a hundred times and not think much of it But if it's something that is a beast of an analysis step I don't want to run that a lot of times. So in today's episode, we're going to talk about that How do we divide our efforts? How do we divide our code to handle heavy lifting and then lighter lifting tasks when it comes to preparing our markdown documents? Hey folks, I'm Pat Schloss and this is Code Club in each episode of Code Club I try to apply principles of reproducible research to an interesting biological question over the course of the past 50 or so Episodes we've been looking at the sensitivity and specificity of Amplicon sequence variants ASVs and operational taxonomic units or OTUs a few weeks ago We are working through doing an exploratory data analysis with our markdown documents Well, now we're writing up our manuscript and trying to take code that we had in those exploratory Our markdown documents and put them into our markdown document to prepare this manuscript but There were a few steps in those exploratory data analysis that took a long time to run In fact, they took so long that we only did one rep of it instead of doing say a hundred iterations To proceed with preparing the manuscript. We need to go back and do that heavy lifting The question though is do we put that heavy lifting those steps that might take an hour to run inside of the our markdown document or we write that in a script outside of our markdown to Create a file that we can then read into our markdown for doing our summary statistics Or into another script that we can then use to generate figures. I Like to do all my heavy lifting in a script outside of our markdown I really like to minimize the amount of data processing that hap happens in our markdown document to me the our markdown document is about presentation and so if I need to Say bold a word or italicize a word or create a section heading or insert a line break or page break I want to be able to generate that pretty quickly right I want to focus on the formatting not on the compute the compute I'm going to do outside of that our markdown document So then when I render the document it renders rather quickly and I can really focus on the formatting The text the send, you know what I'm writing correcting my silly typos and things like that So today what we're going to do is we're going to go back to a earlier set of exploratory Exploratory data analyses and create our scripts that will do those analyses Generate output files and then we'll see how we can bring that into our markdown document to finish off that result section That we've been working on in the past few episodes. So we will come to our project root directory And you'll see we're green. We're all good to go. And we will open up our studio project file Setting us up in our project root directory here in our studio as our working directory And we are in good shape I'm going to go ahead and create a new r script file and To remind you I'm going to come back to my github repository and if I look at the exploratory directory The last couple that we did so three so there's threshold to drop nas v's Not quite sure what that title meant and then lumping and splitting Have the code that we need to populate the values in that middle paragraph. So let me Remind us what that looked like. What is what is in that middle paragraph? So if I come to submission manuscript rmd Hopefully the scrolling doesn't give you headaches. There's this middle middle paragraph here, right Where one of the questions we want to know is what threshold would we need to only have one asv or one otu per Species or per genome in that species Another was if we use that level of resolution that threshold then how many of how many species would share An asv or otu across those species And so this let me look at the md so we can see the the figure is embedded in here That here for a variety of copy numbers And the different thresholds that were used in each region You know, how many Asvs did we see for 95 confidence level, right? So if we look at 95 of the genomes that have seven asvs or seven copies of the 16s gene How many asvs or otus would we see and so that would kind of be like right around here, right? I guess that'd be seven and a half here to be about seven and so we can see that The v19 region to get down here. You would need something on the order of about 0.01 0.02 0.03, right? And actually in this analysis, we did this where we looked at a threshold. We looked at four copies And we then looked at the number of Asvs per species that we would see For different thresholds of defining an otu. Okay So this is the information that we need to write into a script to output a big data file that we can then use to parse To populate that paragraph as well as to make our own figures. So we have a lot of work to do today So i'm going to start with this second question and come back up to the top of here and i'm going to shamelessly steal my own code and copy that into my R script and i'm going to get rid of the here and knitter package calls. I don't need those And i'll remove the here as well. I'm writing these paths relative to the project root directory And so I don't need to hear for that within an r script and I accidentally I hit the save so i'm going to go ahead and put this Into code And I will call it get a threshold for single otu.r All right, and so I can then look at in here if I go to code So get For some reason I put it in the project root directory rather than in the code directory. I must have forgotten to uh Touch that so I'm going to go ahead and manually move that um to my code directory And so now if I look Where'd you go? um code And Let's see get threshold for single otu.r. We're in good shape. So we'll save that So you'll recall that previously we pulled one genome from each species I want to do that again, but I want to do it a hundred times so I can look at the variation that's caused by picking um Across you know many iterations of doing that because it's a random process. We've got our set seed there as well um, I'm going to stop calling these esvs and call them asvs for now um and I'm also going to move this mutate line up To mutate the threshold line. So if it says threshold esv, I want that to be zero um, and if I run these lines, I need to run everything It's complaining that yes, that should be esv not okay From that and so we've got take this a second to read in so we can look at metadata And then as and so that's our genome id and species and then we can also look at asv and this gives us um the asv name The genome the count the region and the threshold that was used to define um that asv or otu This other stuff I'm ultimately going to bake into a function And what I can do is I'm going to Work up to building a function. So I will take Let's see I'm going to take the metadata And we will group that Um by species and then we'll use slice sample to get one genome per species And so if we look at this we see we get 4,774 um different species Um as well as genome IDs and then I can then pipe that Into an inner join. I've got an extra sign there And so then I can replace that metadata with a period and this then will Combine it all together. So we get um genome id species the easv and there's multiple esvs asvs per genome But it's also partitioned out by region and the threshold that we use to define the asv or the otu Good. So like for example here, we've got two asvs from this Catharanthus rosius species and genome, okay Very good. So if we then return back to what we had done over here We again had that metadata esv. We grouped by All these things grouped by region threshold genome id to summarize the number of rns the Number of asvs we group dropped that And then we got we grouped by the region threshold and the number of copies and then got the quantile and the quantile I put this in the wrong space the quantile And for now i'm going to remove these comments Be sure to add my pipes the quantile told us The 95th percentile at the 95th percentile how many asvs or otus were there? And again, uh, this takes a couple seconds to run and so again This is kind of the heavy lifting right if I had to do this a hundred times inside of my rmarkdown document That'd be really painful And so what we can see is that we've got a region. We've got threshold We've got the number of rns and then the upper bound And the upper bound Is the number of asvs that we saw for a 95th percentile, okay um Yeah, so again at a zero threshold. We've got that And again, I can Do it a kind of a hack here that I normally do when I'm Building out the code which is to do something like x equals period capital last value And so last value is the last thing that was outputted So again, I look at x I get that but I could do x and pipe that to filter And I can do threshold Uh equals equals say 0.03 Or let me instead do um n rns equals equals seven And look at that And so what I want to know is what is the threshold where I get one back? Right. And so another way of thinking about that Would be to do Filter Um upper bound Equals equals one And so now looking at this I see for v19 That For these thresholds, what am I doing? Yeah, so for x I've got this and if I look at upper bound of one This then shows me um how many I have right and so here's a case where And I probably want to do this by the number of copies. So let me do Yeah, that's good, and we can then say let's group by n rns And n by region region n rns That and then we can do summarize um Let's say threshold Equals We'll do min threshold Because that will give us the minimum threshold to get one asv or otu Per copy number that we have here, right? And so if we're looking at full length sequences And there are seven copies in the genome then we would want A 5.5 threshold, right? Good, and we can then of course do dot groups equals drop to get rid of that that grouping And I can continue this pipeline that I had up above without using the x There as well, and then this will output All this information for all of all four of my regions and all thresholds that I'm interested in And yeah, so let's call this a function and we will call this get What as threshold for single otu Yep, and function and what I'll do is I'm going to create an argument for called prob and the default will be 0.95 And I can then change this 0.95 to be prob So if I decide later that I'd rather do say 90 percent or 80 percent, I can change it there I think in the text of the manuscript. I said A 90 percentile, but I think 95th percentile is probably a bit more robust So we'll save that and what we could do of course is we could then say map dfr And let's test it out with three reps and we could then do tilde get threshold for single otu And we'll output that and this we will then say um Thresholds for single otu And pipe that out So let's give this a run. I think each time we run get threshold for single otu Takes maybe half a minute or so. I'm going to test it by doing system Dot time on that function And let's see how long it takes to run. Ah, it's complaining Could not find function get threshold. Oh, maybe I Did I forget to do that get threshold for a single otu? Yeah, let's give this another shot All right, so that took about 30 seconds or so to go that was actually much faster than I thought um, if I look at thresholds for a single otu um Let me do filter um n rn equals equals seven um Give that a shot and so what we see is that I've got v19 in here three times So I could say do an arrange by region So it kind of sorts it by the region column there and I see that I've got pretty similar thresholds of the v4 Bops around a little bit. And so again, that's the value of you know, eventually doing this a hundred times um, and so what we can do is Um, we can do that and we can then I'm gonna For now, I'm gonna take off that system time and pipe this and I will do a group by um What I say region and n are ends And I'll do a summarize and I can say Threshold Equals mean Threshold And I will I'm gonna do a median And I'll do iqr Um Threshold All right, let's just do iqr. Um, and that'll be the iqr on the intro quartile range on the threshold And again, if we run this it'll take like half a minute and We'll see that we get the right output and then we can scale up to say doing it a hundred times Okay, so that went quick. Um, of course, I forgot The dot groups here To get rid of that, but let's look at thresholds single otu I see the iqr is very small again. It is for only Um three iterations. So it's it's going to be pretty small um So something else that I would like to have in here is the number of genomes. So perhaps, um Um, let's say threshold min threshold. Um, I'll also do N genomes And that will be the end function And also here then Where I summarize the output, maybe I could also say N And I'll I'll say median n genomes Okay So good, um So if this takes 30 seconds to run Um 30 so if it's like 10 seconds per iteration and I'm going to do a hundred iterations It's a thousand seconds divided by Uh 60 seconds per minute. It's going to take about 16 minutes to run Um, let's see if we can't borrow some of our skills from From the the uh future package for uh to speed up this map dfr step But you might recall from the episode where I talked about building those rock curves that our studio It does not like the future or fur package. So we need to be able to run this From the command line and so I'm gonna put in the shebang line here, uh, which You'll recall is the this line up here Which tells it tells bash to run this script Using the vanilla r script and I need to make some other modifications But because I use this function so rarely, um, I need to borrow from my git rock Data script and so of course I had library fur Which I have here and then also there was some setup stuff that I needed to do down further Which was to plan multicore So I'm gonna put this here So plan multicore and the other thing I remembered that I needed to do Was to set options the fur options to put in the seed And I can do that here So we'll do map dfr And then I can put in my options Fur options 1976 that all looks good. Um, and I can Maybe put this all on separate lines So it's easier to see on the screen All right, so that's good and I need to remove the set seed from up here So I'll save that And I will come back to my terminal and I will ch mod that to be executable. So code Was get threshold. Yeah And then I can do code get threshold For single o2 and let's see how long this takes. Um, hopefully it's quick All right, so that went but I realized I didn't give it any output Um, so let's see. Um, so I'm actually going to get rid of this thresholds for single otu And I can output it to that file, all right? Um It's maybe I'll bump this over a little bit so it's easier to see and I can do write tsv and it'll do data processed And I can call this um thresholds For single otu dot tsv Yeah, so let's give us another go and hopefully it'll go quickly here. So that took about 30 seconds to run. Um, and if I look at ls data Processed um thresholds. It's there. Uh, and let me do a nano on that actually And so we've got our regions our Number of copies the threshold the iqr and the number of genomes that are there um This does not look right um The number of genomes is clearly not right. Let's go back to our studio and double check what we are doing here um And so I Where'd I get the number of genomes? Uh, so I calculate the number of genomes here. This this is probably actually the number of Thresholds that had a value of one in the upper bound. That wasn't what I wanted Um, I probably want that instead Uh to be calculated up here where I did upper bound Uh, so oops, let's do n genomes equals n function With that And again, we can put these on separate lines. So it's it doesn't scroll across the right side of the screen And here then we can also do summarize um Let's see. Um, let's do n genomes equals um media and genomes they they should all be the same value but We'll run that And then let's do get threshold For single otu and let's see what the output looks like as always there's a little bit of uh Fits and starts and getting this all going Okay, so we see the number of genomes on here as well. So we're in good shape And I think this will be good Um, oh, I forgot to do my map dfr Again, if we look at a rock data that this should have been future map dfr Okay, so let's give that a shot. I'm going to set this to be 100 And we'll give that a shot here. Let me rerun this Fire that up and we should be in good shape While this is running what I'd like to do is I'm going to create another tab and open up My my project in adam here is here in adam. I'm going to go ahead and add the rule to my make file To build that file And let me look at data process to remind myself what I called it And if we come down, um Yeah, we can say here data forward slash processed forward slash get threshold for single otu dot r And that is going to be dependent on code forward slash get threshold for single otu dot r And also it is dependent on a couple files. So this genome ID taxonomy As well as the count tibble that we've used for so long now and we can then fire that up by using our special variable the dollar sign carrot and I can then Um, oh, I don't want dot r. I want dot tsv And it's not get threshold. It is thresholds for single otu dot tsv and I spelled the single wrong Ah, so threshold Thresholds for single otu dot tsv So we'll save that and we're going to have to Come back to this and Fix our typo here And so we'll have to rerun this To get this to work, but that can also then be a dependency for um, this file for building our PDF and our word file of our manuscript So we'll save that and That ran it took I think just a few minutes. So I'm going to test this out with make Um, uh, what was it? Um data processed Thresholds for single otu dot tsv and that needs to be an e Um, so we'll run that that might take another couple moments And in the meantime, I will go ahead and remove data processed Threshold first without the e And it'll be in good shape And again, if you look at top one of the nice thing about the future app Is that you can see all 16 processes running on my computer They're not at 100 because the software that I use to to capture what's going on on my screen is called screen flow and that uses Some amount of cpu as well. Um, and so It's not running as fast as it would if I had nothing else running on my computer But it's still faster than only having One cpu going to it at a time, but this will take a moment or two. Um, and then We'll be in good shape. So let's come to our studio and we can then return to our manuscript And right in here, we need to go ahead and put in a code chunk So we can fill in these x values that I put in as as holders so we can do the back back back are And then close it with three back ticks. Remember, we don't need to say echo equals false because in the last episode Be sure you check out the last episode I showed you how we could set echo to false for all of our code chunks And so I will put in here a argument. Um, a variable called threshold Threshold and it'll be read tsv and it'll be data or I really do here, right data forward slash processed forward slash and Let's see if it's done yet. Not quite, but um, I'll go ahead and Copy and paste that in And we will wait and see What the data looks like Once this finishes it should just be another moment or two Great. So that finished running we can come back to our studio Session and remember that we can run all of the previous code chunks by hitting this icon here Which has got the down arrow going to the horizontal line Run all that might take it a minute moment Good and we can then look at read tsv here And so that all looks good and Something that we now want to do is to insert values from that data frame into the text And so what we're what we've got here is we're talking about the propensity To lump species together as well as split things apart um So maybe I'll say to split species Apart to split a genome apart To split a genome into separate Yeah apart or to lump species together, okay Um, I identify the threshold where 95 percent of bacterial species would be represented by a single otu For the full length 16s. I found that a threshold of whatever 95 percent um Of the species would be represented by a single otu so I feel like I Repeating myself here, right? so Let's get rid of that because it was kind of redundant um For a full length I found that a threshold of whatever 95 percent of the species would be represented by a single otu Similarly, blah blah blah. Good. Okay. So what I want to do though is because we really have the data for many numbers of copies And so what I'd rather do is to correct that typo but I'd also like to Indicate a number of operons per genome or per species um Maybe I'll say for full length 16s sequences. I found that Of the species with let's say seven copies of the rn operon Would be represented by a single otu so we can constrain it and you know what? Maybe we'll use that data in a figure and so then we could then point them to a figure But I'm not worrying about figures right now. I'm worried about getting these values in right? So if we look at thresholds um We can then let's filter that to say Uh, not n rn equals equals seven And now if I look at thresholds I get these uh four values for the four regions and I'm interested in that threshold value You can see the iqrs were very tight. Um, not much difference there. And so I can say threshold v19 Is thresholds and I'll do filter region equals equals v19 And I will then pull threshold And I will then multiply that by 100 to get it as a percentage We talked about that in the last episode and so that is 5.5 percent as a threshold And we can copy and paste to do v4 3 4 4 5 v4 3 4 4 5 And let's fill all those in And again, um, I created a special function to format those in the last episode Um, which is down below here. Uh, or I called it down below, which was format pct this Okay, and so let's come up here and insert those values Um, and we can put that here and again, that's threshold instead of balance Threshold v19 Um, let me get the whole inline code junk and So this needs to be v4 3 4 and 4 5 And I'll add a respectively here Oh, I gotta spell it right Good, so we've got that information inserted. Um, there is still this percentage that I want to come back to probably in the next episode to finish off our result section So let's go ahead and make our submission manuscript pdf Make sure those values get inserted into the document But what you'll notice again going back to that issue of heavy lifting Is that that heavy lifting that took a couple minutes to run to generate my thresholds table Um, uh, you would be slowing this down even more And instead what we can focus on in the manuscript is writing the manuscript and inserting the values into the manuscript Rather than, uh, worrying about the heavy lifting of the the computes So we'll open this up. Let me make this a bit bigger so you can see it more easily And we'll come down to that There's some output here that I need to get rid of But you can see that I've got my two and a half four and three and a half percent Very good And I need to now silence these column specifications And we can do that pretty easily again if we come back up here And I can get a sense of what the specifications were because it outputs it to the screen here And I can add that doesn't need to be period it needs to be a comma call types equals calls and I will say, um Really it's region that needs to be call character everything else could be call double So I will say region equals call character And we then need dot default equals call double And do I have all my parentheses? No one more there And that should get rid of it for me and again because I have a make file I can just make stuff right and it's it's very easy to re-render it for me And then I can look at the output here in the pdf once this is completed And if we scroll back down, I think we were there already before I moved it We now see that that is gone right that code chunk where it told us the column specifications is gone And we now have The nice formatting of the thresholds to get one otu per species The flip side we'll talk about in the next episode is this percentage of the percentage of species that shared a ASV or shared a 16 s sequence between them So we'll talk about that in the next episode. So in conclusion one thing I would highlight for you Is that again if we Let me for a moment remove the submission manuscript pdf And build this again and as this flows through you'll notice that it kind of slows down in different spots And depending on like how much you're in a rush and how much you're kind of Printing and editing your document those pauses up here in those previous code chunks May annoy you right you may want to speed those up And so it's a trade-off right so there's obvious things like the compute that we did today that took a couple minutes to run You don't want to sit and wait for that to run as you're worried about kind of removing You know outputting code chunks and things like what we just did Whether you're willing to wait five seconds for it to get through a step That's up to you ultimately and so there is a trade-off between how much compute you do within the rmarkdown document Versus putting that into a script that is outside of the document One of the other nice things about putting it in a script outside of the document Is that now I've got that file and I can use that in another r script to build a figure to show the data And so again, that's the value also of doing those big computes outside of the rmarkdown Is that the data become available for other applications? All right, so A lot of review today But I think it's useful to see that review in a different context with different application as we saw today The next episode will come back and we'll talk a little bit more about redoing those computes for lumping and splitting And because that's going to be heavy lifting we'll also put that into a separate r script Well, thanks again for spending some time with me to watch this project unfold. We're getting to the end Trust me on that. I really appreciate the time that you spend I know you all are busy and you have a lot of other stuff going and I hope you get something out of us If you do, please be sure to leave a comment down below. I'd love to hear what you're thinking about it What questions do you have? I'd love to answer those in another episode Of course, please tell your friends about these code club episodes and we'll see you next time for another episode of code club


Welcome to stage C. Before we start, I just would like to remind you this is entirely run by volunteers and we need more volunteers, most notably to run the audio and video system, to run the bar, to run the car park. There are plenty of things that needs to be done and we need more people for this. So you should really go to volunteer.emfchem.org or to the volunteer tent behind you. But for now, I will leave you with Strato-Binson who is going to talk to you about satellites. Good morning. This is the story behind $50 sat, which became the world's smallest satellite and by quite a long margin the world's cheapest satellite. November 21st 2013, Dombrovsky in Russia. That's a Dnieper ballistic missile. Apparently after the Cold War the Russians found they had plenty of these spare and they've been repurposing them for launching small satellites. They're proving alarmingly reliable. Right, that was launched at 7.10 in the morning after two orbits and about two hours later in my garden shed. That was the first message picked up. That's the telemetry from the satellite and that is basically telling me that it's all okay. The battery is okay. That's the figure at the end, three, seven, two, three. And it was all running well. And at that point I'd have to say that the entire team were quite amazed. This was really a very basic satellite. The original title, one of the titles I was going to give for this talk was building complex satellites is easy but building simple ones is not. And there's an element of truth in that because if you have to build a satellite there is a tendency to go overboard and introduce too much complex tech. There are surprisingly quite a lot of off the shelf components for small satellites you can buy. Solar panels, power units, radio units and all this. But this satellite was very much smaller than anything that had been launched before. So there was nothing available and we had to start from scratch. And rather controversially at the time, certainly in the amateur radio world we decided to go really basic. What was the minimum we could get away with and prove that there's such a small satellite would actually work? Now I have a working model here. That is how big it is. That operated in orbit far longer than we expected. It operated for 20 months. We only expected it to work about one month, the main issue being the battery. Right. And as an example, one of the reasons for giving this talk was I wanted to explain that even something like a satellite, you don't need a lot of complex stuff, equipment to build, design and make it work. It was done in a garden shed. That's quite true. And the only complex bit of equipment I used was an oscilloscope. All the rest was using the natural environment around us. Okay. This was the first of a new type of satellite called pocket cubes, pioneered by Professor Twiggs in America, Bob Twiggs. He'd also come up with the CubeSat standard some years ago. Those are 10 centimetre cubes. But he decided to do something smaller. And he called them pocket cubes. And these were based on a 50 mil cube size. So that's two inches. So he started a project to do this. And the idea was that they would be very simple to build. We'd use off the shelf components where possible. Perhaps the only exception would be the solar panels. And the construction had to be within the remit of your average school or college. And for that reason, they decided to use a pickaxe microcontroller. Some of you might be familiar with. They're very popular in schools in this country for teaching technology. And they're also very popular in America. And part of the reason why I became involved in this project as effectively as a consultant was I found myself as being the only person in the world who had actually connected a pickaxe to the radio module we were going to use. And the radio module was going to be an RFM 22B. Now, I'll show you one later. But these things are about the size of a 10 P piece. You can get them for about two pounds. But bear in mind that we're working with a 50 mil cube size. So it's got to be really small. Now, the minimum distance we needed out of this for a radio was 600 kilometers. Now, when we started, we said, well, if we can just hear a Morse code beacon, that would be fine. Now, we had a very good idea that that would work. Because there are satellites in orbit using such low powers, which you can hear. So we were fairly confident we would hear it. But we also needed there was another another requirement we put upon ourselves. We had to be able to communicate with it two way. And the reason for this is in theory, if you launch a satellite, you're supposed to be able to turn it off if you're asked. Now that requires two way comms. Now that was the tricky bit. Because the manufacturers of this device hope they reckon that it was good for a kilometer. We wanted 600. Eventually, we got about 2,200 out of it, various means. This device is frequency agile, essential for us because we would you would be allocated a frequency to run on in the case of $50 at 437, 437.505 megahertz. We could set it to any frequency light. There are very few other radios that will fit in a 50 mil cube. There is one now, somebody has built a radio for a pocket cube, and it costs about one and a half grand. This costs about two pounds. Right, that's the development model. I had to put together a working example of this using a code, using a code I developed. And that was how it was proved, solar panel, et cetera, et cetera. And that sat in my garden for quite some time. But what we needed to do was prove that the radio would work, that we would get two way communications. Now you can read the data sheet for as long as you like on this device, but it won't tell you anything really. Because those are based, the figures they give are lab conditions. We wanted to know how it performed in practice in the real world. So I live in Cardiff, South Wales, lots of mountains and hills. So we started using the hills in the area to do radio tests. That is in the far distance in the middle of the picture, it's Cofillie common, just between Cardiff and Cofillie. And I'm on Machen mountain. And one day I left my brother on the farm mountain with a pole and a radio transmitter on the top. And I measured the signals coming back from eight kilometers. And surprise, surprise, it worked. We got about eight kilometers and we were only using about 10 milliwatts. But still, we needed 6700. That's the route there on the map, Cofillie common, the green at the top of the picture. Very fortunate in Cardiff in that there is a hill to the north of Cardiff. And across the channel, there is another hill in the mendips. And this forms a nice 40 kilometer path where there is almost nothing in the way. So it's true line of sight. And we set about measuring what would happen. That was the route. It was a long drive for me. But we were able to pick up the signals from 40 kilometers away at 100 milliwatts. Now still, we're nowhere near where we want to be. Because we said we needed 600 kilometers. But there is something else involved. For anyone who knows the locality, that little blue line there, that is where some guy called Marconi was doing some radio testing in 1897. Quite famous, I believe. Right. I fed the results of that test hilltop to hilltop, back to Howie, colleague in America. And I don't expect you to read all that. I read it and it gave me brain hurt. But that's what he came up with. But the net result was that for the uplink, if we wanted to talk to the satellite in bold at the bottom, we needed 36 watts of power into a 10 dB beam. Now a 10 dB beam is something like one of these. This is an arrow antenna, satellite antenna. So using that and a 36 watt amplifier, I built my own. This thing here cost about 50 or 60 quid to build. We would be able to talk to our satellite. And that's all we wanted to know, really. As it happens, in the end, we found that coms was better than expected. And I once was able to send a message to a $50 satin that responded using 25 watts. And it was 2,200 kilometers away. Right. Now the team involved at this point, I was still asking, I was still being involved as a consultant. Effectively advising the students over there on the radio and the pickaxe and what have you, and doing the radio testing. About, I can't remember the exact date, somewhere around September 2012, Professor Twig said, well, do you want a launch slot? And I know that there is the famous saying, there's no such thing as a free launch. But in this case, it was true. And he said, well, why don't you build one? A pocket cube. Oh, yeah, of course. So the three of us involved got together and we decided to very quickly come up with the design for three people. I'm Michael Kirkhart. He's an electronics engineer. I'm the radio operator for many years in America. And the other one is how he did police. I'm not entirely sure what he does. He was prepared to go on up to working on a very famous airplane in America, perhaps the most famous jet airline jumbo there is. He did the comms on that. But the rest of the stuff he gets up to, he said he couldn't talk about. There was me. I notionally work in computer technical support these days. But I am an electronic engineer by background. I was involved in the manufacture of things like the micros and spectrums and Archimedes machines in the 80s. So I kept a very interest. And of course, there's Professor Robert Twiggs. He's the Professor of Space Science at Moehead University in the States. Right, design of $50 that. Having been given a free launch, we said, what are we going to do? I mentioned earlier, we could have gone nuts and put lots of fancy tech in. That's sort of satisfying in a way. But we took exactly the opposite view. We wanted to do the absolute minimum possible to the satellite. The minimum amount of components, less components, less to go wrong.  You simply cannot add simple. The more you add, the more complex it becomes. So we kept it really, really basic. We wanted to do the minimum possible to prove that the concept worked. Because this was entirely new. These small satellites had never been tried before. So we took it upon ourselves, apart from what other people were doing, to try and prove that the idea would work. There were four other pocket cubes launched at the same time as us. T-Logo Cube, which survived until the following end of January. Cube Scout and one called Ren. Those two never went operational. The success rate of amateur satellites is quite poor. But we really, really tried to make sure that we didn't do anything that would compromise the satellite working. We chose to use 40 mill boards. That's quite small. The idea there was that there would be two boards inside $50 at. One the processor and radio. Another would control the solar panels. But we needed to have space inside to allow wires to be fitted and whatever. So we said from the start, 40 mill boards. We were using a Pickaxe 40x2. It's still the only one that's ever been in space. There's likely to be another one fairly shortly, but I can't say much about that. The RFM-22B is the radio chip. Again, this had never been in space before. We needed to add watchdog and latch up protection. The reason here is that allegedly satellites, especially ones that have got virtually no screening, which this doesn't, are affected by particles in space and it causes them to crash and corrupt things and all sorts of nasties. And there's another problem is that if a particle goes through a mosque at exactly the wrong point, it causes it to turn on and latch up in a high current state. And the only way out of that to rescue your satellite is to power it down. So we built in a very simple bit of circuitry, which every so often would power the satellite down, but every two hours or so. But we could also, if we detected an anomaly, like the current was higher than expected, more of that later, we could force a shutdown. And that would disconnect the power for about half a second. And that's enough to clear that problem. I have to say we didn't have any problem with that at all. Nothing happened. Solar power, four sets of tasks, solar cells. These, if you look at them very carefully, you'll see the little tiny triangles. These are offcuts from circular, silicon panels that are made. They cut off the edges and they send the square ones up into on real satellites, if you like. But they sell these little offcuts. Each of those little triangles is about three dollars each. The state of the art, solar panels, solar cells, at the time about 28% efficient, which is massively more efficient than the average thing you see on a house roof or whatever. But bear in mind the area we had for solar panels was very, very limited. It's important to track the voltage point on the solar cell to get the maximum amount of energy out of it. Because at high current, low voltage, high voltage, low current, somewhere in between there's a happy medium. And you can then match the solar cell to the load in an efficient way. So we had a couple of circuit LTC 3105s doing this for each bank of solar panels. We had a current monitor on there and that was part of the protection. We needed to know how much current was flowing, both to the solar panels and through to the $50 set itself. That's the battery and that's the radio. The battery is the sort of thing you'd buy in eBay. I think we did actually. There are about £2. A little tiny thing. Now I'd have to say we didn't expect it to last very long. One of the problems was it was going to be very cold, more of that later. But it was also, it would go through an enormous number of charge cycles, which is the problem. We'll work it out. One charge cycle every orbit, 13 orbits a day, 20 months. I did write it down. I forgot what the card was. So we wanted to know, we could prove it would work because when it was launched you could hear it. But we also wanted to know what was happening. So the things we were monitoring were the voltages, battery, solar cells. We wanted to know how well the battery was doing. The currents, we needed to know how much power it was consuming, how much charge current we were getting from the solar cells. EEPROM corruption. Again this was something we put in because we were told it would be a problem. So every sort of transmission cycle, which is about a minute, I put in a check, which did a check some on the contents of an area of EEPROM to see if there was ever any corruption. There wasn't in 20 months. We also did the same thing on the flash, which is the core, where the core program is kept on the TICACS. Again we were told there was possible potential for corruption there from part of some space. There wasn't. We didn't detect any. We also did, I'd also did the same thing on a spare area of memory. Now this we warned was perhaps the biggest problem that RAM could get corrupted because again very little shielding and that you know you could get a bit flip on an area of RAM and it would cause problems to your program. We thought we detected one in 20 months, but we were never sure. But it carried on working anyway. There's a technical problem with the RFM-22. It goes into a, it's got a circular smart reset which is anything but and it causes the whole thing to latch up. So you have to detect that and correct for it. What communications did we have from $50 sat? Well most call signs, the whole, the thing was would start and it would transmit call signs in order. Mine first and then the other three people in the project and then $50 sat's own call sign. The Morse was encoded in a way that you could tell, you could tell how well the battery was charged in case we couldn't get any of the other comms back. We had fast Morse data. Now this is really old-fashioned stuff, but 120 words per minute Morse, fast Morse, it was decoded and it, we were sending the solar cell voltage and the battery voltage and that. So anyone with an average hand receiver could have picked that up. Then there was the data telemetry from the RFM-22 itself. Now that we were very dubious about whether we would get back. As it happens we did just about. The limit was about 800 kilometers. And for that I used an antenna like this. I'm sure you recognize that as a quadrophila helix. It's made from plumbing pipe and bits of barbecue stand wire and it works extremely well on satellites. Plus you have to use a fairly sophisticated low noise amplifier. There's one here when I built myself. You can get it from a kit and you build it in the box. But with that we were able to get the telemetry back from, but it was created in kilometers. But the main thing that made 50 last such a success was we used FSK Ritty. FSK Ritty is an old style comms method used by Hams from years back. 100 board, but that could be received with the right amateur radio receiver when as soon as the radio, 50 last that came over the horizon, the radio horizon, that's about two and a half thousand kilometers away. And that's what made the project such a success. Those are prototype PCBs. The radio, the radio's got the programming connector. The other radio with no connections is the solar charge board. This is the build of the box. Again the build had to be really simple. Something you could do in the average workshop. So it was basically just bits of machined aluminium.  The only critical part of the construction was the base. That had to be accurate, nothing else did. That's the boards just before they were connected in place. That's the antenna end. Yes we really did use tape measure. That's the inside. There's a very good reason for tape measure. I'll show you in a second. Those wires are PTFE. You can't use PVC wire in space. It falls apart. Those are solar panels. That's it sort of more or less. Yes there is really tape measure. That's the inside. A lot of space really. That's it in its launch tube being shaken to bits because obviously rockets vibrate a lot. And that's it in a vacuum chamber because vacuums do strange things to plastics. And that is not our satellite but T-logo cube being launched into the mother satellite, which was called Unisat 5. And it's from there that the satellites were launched. Now the reason for the tape measure was if I mentioned there was on the vibration test it was in a launch tube and the launch tube was quite simple. All that happened was a door opened at the right time and a spring at the bottom of the launch tube which was square pushed the satellites out and of course as soon as our satellite was pushed out, out springs the antenna. So simple but effective. The satellite behind us had a more complex deployment mechanism and we think it didn't work. That's why they never heard from it. Meanwhile I had to get I had to organize the uplink and it was basically all home-built kit. The aluminium box is an RFM-22 receiver I made. You've seen the amplifier. That's a funky dongle. I used that to listen to it and at the right point I could press a button on the receiver and it would send the telemetry message, the command, up to fifty dollars that to do whatever it was expected to do and that worked quite well. What we go wrong? Well we did get something wrong. I'm afraid. The battery. This was a major concern. One of the problems was that there are no, at the time, and I think it's still true, there were no space rated batteries. There isn't. There are larger ones for CubeSats, lithium polymer packs you can buy, but nothing in our size. So that was literally was an off-the-shelf camera battery. So we didn't expect it to last very long and part of the reason was that those types of lithium battery you can't charge below zero. Now the satellite, I'll mention it again later, was to spend a lot of time below zero. There were some software errors. Cockups are my part mainly. In particular we were unable to discern between, because of a mistake I'd made, we were unable to tell the difference between a planned power down and an accidental power down, although we were able to work it out eventually by looking at the occurrence of resets because the satellite was sending out a constant count of the number of resets it had gone through. Spin fading. Anyone who ever listened to the FSK RIT you will have noticed it fading in and out. The reason for this is the satellite was spinning about once every two seconds. Now we hadn't thought too much about that. We did have a magnet inside the satellite so that it was actually orbiting at a constant angle but we didn't think to put one in to correct the spin. So but it wasn't a huge problem. Time below nought degree centigrade. This was a big surprise. Cube sats, the ones 10 centimeter cube things, tend to stabilize around zero because at one instance they're at minus 30 and then they're in minus plus 30 whatever. So they tend to stabilize internally at about nought degrees somewhere around there, five degrees something like that. Our satellite was so small at such little mass that it was recorded. Every orbit it went down to minus 30 in the dark and up to plus 30 in the daylight. And this actually meant that because of the battery charging problem we didn't have that long to be able to charge it. About half the time we really thought because we had to wait. There was a temperature sensor on the board and we had to wait for the battery to warm up before attempting to charge it. So in reality when it was coming north over the UK it was probably in sunlight for about 15 minutes or 20 minutes before it started to charge. We didn't point the solar panels at the Sun and this was something we worked out eventually while we were puzzling as to why we won't get as much charge current as we thought. And what was happening is although there was a magnet that was stabilizing it in attitude as it went around the Earth, what was happening is the Sun was over there say and we should have stabilized it so that it went around that way. You know rather than going around orbiting that way it should have been done that way. And we hadn't thought about it. What we got right. Well the down thing worked. We did keep it extremely simple. You really could build one of these in your own garden shed. All the stuff is open source and public. If you want to look at the hardware designs or the software or whatever that's all online. Just look up Google $50 app. The amount of testing. Extraordinary amounts of testing on the radio setup. You'd be amazed. The use of FSK RITI. That had a dramatic effect because that was so easy to use. And we proved that the digital telemetry from RFM 22 was viable. Thanks to some of the people involved. In particular Professor Twiggs and the Gauss Group University of Roma. At the bottom some of the amateur enthusiasts who filled in reception reports for the FSK RITI. Now this originally this slide was finished my presentation. And it was quite it's quite ironic that yes it is the moon. But what I wasn't to know is that you might be aware that there is now a radio, an amateur radio project to send a pocket cube, not a pocket cube, a CubeSat to the moon. So it's quite prescient. But after this I did get involved in something and this I wanted to take the time to mention it because it's worthwhile. And it's to do with Laura. Now Laura is a new radio technology released in about 2013. It's used as spread spectrum which is not new. But it's the first time it's been done in a low-cost module. It's about the same size as the radio we were using and about the same price. However it operates a 20 dB below noise. That doesn't mean a lot to most people I guess. But it means it's very long range. And I first found this out when because I'd done so much testing on IFM-22. I set up an IFM-22 with low power on Tenby Beach and I lost the signal 100 meters away. I lost the Laura signal, same power, a kilometer away. It was capable of covering 10 times the distance on the same power. So I repeated the test across the channel and that again proved that. What had taken the radio in $50 had taken 100 milliwatts to cover 40 kilometers. The Laura device covered in two milliwatts. And I then decided that the best way of testing the long distance comms is to put a little tiny tracker on a foil party balloon. There's foil party balloon. And this has shown that Laura produces, Laura will cover at 10 milliwatts 400 kilometers, 1500 bits per second. That's quite fast. You would get, if you use the full 100 milliwatts the device can produce. You get three times the range and you get nine times the range at 100 bits per second. Now the net effect of all that is someone's going to do this in space very shortly I believe. You're talking about being able to receive digital telemetry from a satellite in orbit using a little receiver like that you can build in a lunchbox. Because the range should be about 4,000 kilometers or so. That's all. We haven't got time for questions. If you want to find anything more about Laura you can look at that website at the bottom. If you want to have a look at the model I've got the satellite or ask me a question. I'm sure you'll see me walking around. I'm the guy with the satellite in his pocket. Thank you very much.


Oil and gas communities in Delta State have asked the Economic and Financial Crimes Commission, EFCC, to investigate the immediate past government of Delta State, Ifan Yokoa, for misappropriating over one trillion-dollar oil derivation fund belonging to the state during his tenure. The communities alleged that the diverted fund was from the 50% allocation to Delta State Oil-producing Errors Development Commission from the 13% oil derivation fund for rehabilitation and development of oil-producing areas in Delta State. The communities operating under the auspices of association of oil and gas-producing communities of Delta State throw their representatives from the EFCC headquarters in Abuja to present their case against the government. The sum of 1 trillion, 77 billion, 450 million, 285 thousand, 552 Naira, 17 Kobo has been disbursed by the Delta State Government from July 2015 to December 2022 for the rehabilitation and development of oil and gas-producing communities in Delta State. In fact, what Okowa receives is far more than the amount if the 13% modular allocation of January 2023 to May 2023 are added. It will interest the public to know that the immediate past governor, Senator Dr. Ifan Okowa, used our 13% derivation fund to build and buy over 80% shares in the Premier Trust that is just about two years old. We are strongly appealing to the Commission, shadowing the responsibility to probe and investigate the immediate past governor, Senator Dr. Ifan Okowa, to recover and return our money of the 13% derivation fund from the federal account to the state government and render necessary account for the said illegal and unlawful misappropriation balance to the


Hello, let me show you how I created the word document that injects shellcode, that launches calculator, so that I could test emet and windows 10. So here I have assembly code, let's open a command line, and this is shellcode that will launch calc.exe. So let's assemble this, so let's create the shellcode in a bin file, and this is the shellcode we want to assemble. And now we can use my shellcode tool to VBA to convert this shellcode, so make sure you take the bin file, not the asm file, and now we can create a VBA.txt file, okay. So this here is VBA code that contains and launches the 32-bit shellcode. So I can just put that into Word, like this. So let me copy this and put this in the VBA editor, and let me save this doc1 docfile, and let's call this calc shellcode, like this. And now if we run this shellcode, I made a typo here, sorry, so let's run this again, okay, and you can see that calculator gets launched via the shellcode, so let's save this. So this is the 32-bit version for 32-bit Word. Now if you want to create a version that supports both Word versions, so 32-bit and 64-bit, you can do the following. So I have also assembly code for 64-bit, so let's assemble this. This is the assembler code, so let's create a bin file, like this. And then with shellcode to VBA, we also convert it to VBA, but we have to tell it that we have to deal with 64-bit here, like this option. And then also, since we are going to include the same functions from 32-bit and 64-bit into the VBA, I'm going to add a prefix, sorry, to the functions x64, and now we can convert it, make sure you take the bin file, okay, VBA.txt, and now I can edit this, okay, this bin file, I can here see with pointer save that this is the 64-bit version, so let us copy this, like this, the declarations here, and we put them here in Word. So we want to test if win64, then we have this code and else we have the 32-bit declarations, like this, and then we can copy everything else here, the VBA functions for 64-bit shellcode, like this, here, and then we can just create a function, launch, sorry, launch, like this, if win64, then we launch this function, and else we launch the 32-bit version, so we can save this, and now if we execute this, so we get again the calculator, but if we do this on 64-bit Windows, no, 64-bit Word, then we also get the calculator launched via 64-bit shellcode.


Jordan Peterson recently said there's going to be a population implosion. We will never get over 9 billion people because educated women have too few kids. Too few kids by whose standard?  He claims to be a defender of individualism, but he's such a collectivist sometimes. By whose standards too few? The only person who can decide whether a woman is having too few or too many kids or just the right number is her. And maybe her husband. Is this because Western educational institutions promote anti-human nihilism? No, why should the population of the earth grow beyond 9 billion? Why should it not shrink? What is the right number? Should it always grow? By what standard? Who decides? Now, I think generally, if we were less nihilistic, if we were more optimistic about the future, I think people would have more kids, but maybe they wouldn't. And that would be good too. The point is that the only people who have a right to decide how many kids they have and the only people who should worry about how many kids they have. Other people having the kids. Jom Khazani in the debate also said, ooh, if you don't worry about how many kids you have, then you're irresponsible. Who? Why? I mean, I agree to an extent that I think having few kids is a sign of pessimism, of not believing in the future, I think. So let's change the culture and let's see how many kids people have, but whatever many kids they have, they have. And it's fantastic because only they can decide. Again, values are personal. There's no such thing as collective values. There's no such thing as Jewish values. There's no such thing as Russian values. There's no such thing as American values as an abstraction, divorce from anything else. America doesn't have values. Americans have values. And the American state has a value and the value is freedom, individual rights, that's it. But that's only because it goes back to the individual. The whole point of individual rights is to leave values to the individual. So the American government should never subsidize kids or not subsidize kids. That's why it should never have a position on abortion, one way or the other. Government should have no view of abortion. You don't like abortion? Don't have one. Harper Campbell always mentions Pareto distribution. 80% of the wealth in the hands of 20% of the population, 80% of mass in the universe and 20% of the stars. Is there something that 80-20 ruler isn't pseudoscience? It's pseudoscience. I mean, there's something to it. It's often a phenomena. It often occurs. But there's no, as far as I can tell, fundamental metaphysical or physical rule that it has to, it doesn't have to and who says it's 80-20, maybe it's 90-10, maybe it's 73-27. And that's not Pareto optimum, well, Pareto distribution. Yeah, it's pseudoscience. It's just made up stuff that he comes up with. I agree with him that there would be inequality in a free society, any society. We're not all the same. We're never all the same. So we will be different, outcomes will be different always. But how they're distributed, in what ways, that is not determined by some formula. That is determined by the state of the culture, productivity. I mean, people are saying inequality in the US is increasing. So what's it? Move from the 80-20 to the 90-10? No, there's no rule there. There's no right or wrong there. Oh, Dave, I forgot you had a $100 question. Should have started with that. Dave says the leftist collectivist, because they think everything is engineered. All leftist collectivists, because they think everything is engineered. No, I don't think so. Crime, poverty, wealth, all structures applying pressure on different segments of the masses. The concept of individuals acting autonomously doesn't register to most intellectual as possible. Yeah, I mean, that is all right, but I don't think it's about it engineered. I think to them, individuals don't matter. They have no standing in the universe. It's only groups that matter. And then it's what those groups do or don't do. And since groups are mindless, groups can't make decisions because there is no collective consciousness. Somebody has to make those decisions for them. And because people generally in those groups don't know what's good for them as a group, somebody has to make decisions for them. Somebody has to decide what's good for them. Somebody has to decide what values they should pursue. So it's their job to do it. And if need is the basis on which we should structure society, then everybody has some needs. And what you do is you create gangs. You create constant pressure groups. You create gangs who are fighting over the crumbs, who are fighting over what's being redistributed. But the idea of, yes, ideas of individuals acting autonomously, using their mind, pursuing their values, being rational, and knowing what's good for them is not something that registers for these leftist intellectuals. They can't comprehend it. You can do that by going to youronbookshow.com.  Also, if you'd like to see the Iran Book Show grow, please consider sharing our content and, of course, subscribe. Press that little bell button right down there on YouTube so that you get an announcement when we go live. And those of you who are already subscribers and those of you who are already supporters of the show, thank you. I very much appreciate it.


Everybody forced here ripping 2022 contenders football hobby six box half case number four pick your team style Alex with the Bengals Bernie with the Niners and Steelers Brandon L. Saints Chris S. Bears Edward He with the Cowboys Jacob L. Falcons James T. Raiders James M. Packers Jeff G. Chargers Jeff T. Chiefs JLoone has the Rams Jesse with the with the commanders Joe H. Ravens John M. Dolphins Kevin S. Seahawks Manuel with the Pats Michael R. Lyons Ming Q. Panthers Patrick G. Bill Sean M. Titans Shane W Cardinals Broncos Texans Steven H. Bucks So Steven H. A with the Bucks Steven H. O with the Eagles Tristo with the Colts soon a foomey Browns Giants Wayne S. Jetsack D. Vikings Zach S with the Jags. Good luck everybody. Let's get started here Just three to go on the next one and there's still teams available in the other contenders PYT today and tonight as well Court Kings break start tonight We live again tomorrow the base on channel 10 a.m. Start time Kenzie's next breaking shift is tomorrow daytime as well bunch more contenders and court Kings Here and Donald the gladiators Jordan Davis Eagles on the rookie ticket up first they go to the Eagles Roll on a die here on the contender series one two three left four five six right It's a five I'm gonna go right side on these right side Unless there's a there might be parallels on those if there's a one-of-one it'll be random instead Stafford and Cup So again, those all go right side for the for the break here If there's a one-of-one it'll get random instead rookie the year Christian Watson Packers What was a rekay? Ricky ticket out of Broncos Hunter rolling for the round numbers now one two three top four five six bottom. It's a four going to go bottom on these Bottom on the round numbers that one goes to the Giants came on tip-a-doh Brian Cook Chiefs rookie ticket auto on Andy Reed. Where are you Derek Carr? Come on Andy Reed. Oh Jackson Yeah, they have print runs listed on GBC at least Herschel Walker It's like 199 total Andy reads Jordan Mason Niners on the rookie ticket auto supernatural Malik Willis Chaco rookie the year Jordan Brooks Thayer Munford rookie ticket auto Raiders Travis Kelsey That's what I'm saying Wahoos We haven't seen a single one actually We haven't seen a rookie quarterback at all Tough start on that end of things No zappy no Ritter No picket. No howl To 90 oh we had a scholar Thompson that was the only I think that was literally the only one to 99 Andre Johnson Game day ticket for the Texans There is a variation for the Ravens of Kyle Hamilton cracked ice 11 of 22 rookie ticket auto There we go. Congrats Ravens We'll get this one mag for you Most cracked ice will probably get a mag today, especially on card Grats Ravens rookie ticket Traylon Berks Good stuff Baker is a ram that I just saw I just realized Baker is a ram I'd be one of his only Rams cards to be honest George Carl off this rookie ticket auto furious George Chiefs That's right. Justin. Yeah. Oh, yeah all the doken Said scholar Thompson. We had a numbered of All the doken I feel like they may have been one We haven't seen a strong there was a row the rich Garbers for the Raiders. I think say corn has a division to a record for a QB So we haven't seen it in the chase quarterbacks Armani Rogers rookie ticket auto commanders That's awesome Drake London we've hit all the receivers I think Except like Watson maybe in Berks, but all the other ones we've hit Supernatural Mahomes. We've hit Wilson. We've hit a Lave. We hit Jamo. We hit Dotson Wilson I think Hurts and AJ Brown touchdown tandems Skymore rookie ticket auto on card for the Chiefs RPS Lamar Jackson VP contenders John Fitzpatrick rookie ticket out of Falcons Jalen Hurts. I can see I can see it totally I can see it cook and Alec Pierce I can see that for sure Miles Garrett miles Garrett sacking Joe Flacco on the Jets interesting Tegan Quattariano Texans rookie ticket auto James Cook They don't call him furious George for no reason That's a Nelson TJ Y Chiefs Christian O'Coy a number to 99 Gladiators The Nigerian sensation wait till the YouTube comments are coming in on the videos. Let's say It's not it's not the Nigerians. It's Nigerian. I'm a Nigerian station Hey, I that's a Brad thing just carrying on that tradition Shannon Sharp Mike Williams Justin Herbert Herbert winning ticket a Devin white What is it MVP contenders Justin Jefferson Come on big hit come on big hit James Robinson championship ticket to 99 Jets Homes there on the game day ticket And there's a Hutchinson. Come on. Let's see a nice number here rookie ticket RPS Lions base RPS Still nice one for the Lions rookie of the year contenders Skymore Skymore and about groundless Amir White That's hard so far Tyler Goodson rookie ticket rookie championship ticket auto to 49 for the Packers Mack Jones MVP contenders it's Gold hutch. I don't know. That's weird. I won't say that one just because it's metal card Maybe the cracked ice sky more. Maybe the London variation It's probably one of those two specifically actually Deandre Swift Lance McCutchen Ricky ticket auto for the ramps Outfielding legend McCutchen right there Anthony Munoz Yeah, I'd probably say sky cracked ice because it's a cracked ice And he's looking like wide receiver one or two there now with all the Guys they let go. It's like him and Tony really. I mean Kelsey's wide receiver one there supernatural Drake London for the Falcons Stravis Kelsey is a wide receiver Carson strong variation rookie ticket RPS for the Eagles Evans and Lattimore. Yeah, we're hitting the receivers. We're doing we're doing well with receiver hits. We need some QB hits Montrell Washington showcase rookie ticket auto for the Broncos Ricky A hutch and pick it. It's not the first one I've hit today J-Row, but it's the first one in a while John and Taylor. Yeah, for what it's worth. We did hit a scholar Thompson to 49 That guy started a playoff game, so he took it RPS is for quarterbacks usually hold decent value until they're like Just absolutely not good, you know what I mean? Like There's if there's a on-card rookie out of the whole value is this Travis Kelsey each playoff ticket to 199 for the Chiefs Harder see for one. Yeah, J-Row. They're done. They've been alive. Plus we had some all the Dawkins Perry and Winfrey Browns playoff ticket rookie auto to 99 for the Browns already said that There we go. Jefferson. Yeah, Deandre Swift. I wonder if he I wonder if he knows is you sky more Who is it? Andres, yeah, the glasses. Yeah Britann cubby rookie ticket auto for the Eagles and John L. Way did I want to go to the gaming shop so bad it probably not just every Mike Williams I was going to the back or I'm sure that's okay. Joe Burrow Yeah, I know the what's your grain opening April 15 Yeah, I'm sure they'll be there though So they'll have like they'll kind of be like open the week before that makes sense that makes sense get certain You know not there not guaranteed Okay, that's kind of cool though round numbers Watson and Robinson this paper card dust is different than the chrome card dust James Cook rookie ticket rps for the bills JC That's what it was J-Row. They actually had a higher training staff Supernatural Drake London It wasn't a guy that it had six beers before the game. There's a Jets 4 of 10 Sunday ticket auto Zach Wilson Jets legendary Shannon sharp TJ Watt It's not a copyright infringement Trey McBride Is it is it really Adam the flesh and blood dust? It sounds intense. No, but yeah that I haven't opened a flesh and blood before Steve Young Yeah, the chrome dust is like it'll hit you like it once but like Like the bowman paper card dust or like this contender stuff. It'll like build up It'll like just irritate you or if you take it auto a Channing Tyndall for the Dolphins It's the basic What are you talking about me to get a spot? I'm good tickets to Jalen Warren rookie ticket auto for the Steelers to 30 There you go Steelers not a picket, but a good hit nonetheless Jerry Rice Now they're Channing Tyndall Dolphins rookie ticket auto here Danny Gray didn't do a whole lot last year as a rookie So it's probably not something you're chasing especially if you buy the 49er spot. It's not really what you're chasing Eddie George Ray Lewis So Adam what we um, I Forget what release it was. It was one of the final sword and shield releases. It was a booster pack that I opened Lane was ripping a box. I opened a pack for him Fidere and Matt this rookie ticket auto commanders. I opened a pack like that and it was just like It was so much card dust kind of walk with the third rookie of the year contenders I wish I think we took a picture of a Caleb might have it on his phone So much card dust dude. I know exactly what you're talking about eight hush is supernatural The cards were fine, but you'd have to like Definitely uh Work to get them dust-free Olava and Londoner. There wasn't a hit in the pack nice one a Cooper cup Game day ticket five of ten for the ramps I said why aren't you my son? This is my worker. Can I send you work as late? Chris Olava rookie ticket rps saints. We pulled a few Olaves today I think we've hit the most Olave so far as far as rps is go So Dak Prescott with Danny and Tomlinson share I can't believe he's I can't believe what's his name said that that's Ron Rivera. The ron Rivera says some crazy stuff Pretty mid coach if you ask me Got a a Caleb Evans Rookie ticket out of Vikings a Caleb Evans Justin Jefferson Why is that? I don't why don't you open more Ronnie lot Don Tarrio drum and cowboys rookie ticket auto Sake one MVP contenders How's so Aaron?  Here's been pandas commander's coach. That's just uphill battle all the way right there. Malik Willis Hello, good news commander's fans. There's some bids in for the team Jamar Chase Hey, Brian Dawkins Yes, Ronnie lot. Wahoos. I guess breeze hall I don't like answering that question Darn on moony on the playoff ticket to 199 for the bears Kyler supernatural John met you the third variation Championship ticket auto four of 25 Texans nice card Good stuff for the Texans there I got one legendary Dan Marino Up to you. Yeah, we'll go ahead and mag that uh Lauren's heavy peeking center. Go ahead and mag the uh Why can't I say his name again? I got Yeah, michi we'll go ahead and mag the michi. That's really low numbered on card as well in the rps All the doken chiefs rookie ticket auto Oh top tier entertainment for sure He's awesome. I'm just saying like Yeah, as as an actual football coach. Yeah, no ron ron's cool. I like ron as a person for absolutely I'm with you there air and jasper thompson rookie ticket auto cardinals Thank you. Shane. Hope he has a good year. Probably brice young. It's as cute be this point Brice young it's looking like brice young. It could be it could be ar I think it's strats I think stroud's probably it's like 70. It's like probably over 75. He goes the Course when you're in, uh, not caroline Theny and thompson Make sure grabbing those last few teams shane. I think they were some of the last few A showcase ticket rookie auto zion johnson chargers Just denver the next one y'all just denver 49 bucks the Harrison smith a james and williams johan dotson Androma ford rookie ticket auto browns. I wonder how many bowl bowl cards are in corkings Unbelievably All right Uh, recap here we got zion johnson showcase jaylin thompson chrysal the doken don'tario drummond chanting tindle chanting tindle Tickets dub jaylin warren the 30 nice hit stealers A kale of evans chrysalava rps fedarian mathis got zack wilson a 10 james cook rps britain covey playoff ticket perry and winfrey showcase ticket montrall washington Carson strong lance maccuchan tither goodson championship ticket aden hudgensen rps Tegan quitariano john Fitzpatrick skymore Armani rogers george carloftus thayer munford jordan mason bryan cook uh A yoma wazirike jordan davis drumford A john matchy championship ticket four of 25 There you go texans good stuff there and cracked ice rookie ticket variation kyle hamilton 11 of 22 Thank you very much everybody on to number five


Hey Weirdos, how would you like to be one of the first people to join me in a brand-new online Weirdo community? You can find it at WeirdDarkness.Locals.com. Again, that's WeirdDarkness.Locals.com. It's a new social media page exclusively for the most loyal of listeners and supporters – you, the official Weirdos. You'll get the commercial-free version of the podcast each day – exclusive news and content. And I'll also be able to upload videos there, schedule live stream events, and live chats. And it allows you to interact with other official Weirdos by posting your own content and opinions, commenting on what others post, share what you like on the page with others, and invite them to the community, etc. It's kind of the best parts of Facebook, Twitter, YouTube and Patreon, but without the worst parts of Facebook, Twitter, YouTube and Patreon. This is a free speech community. No overly sensitive or politically correct fact-checkers are moving content because they don't like or agree with it. If you want to join me, I'm giving the first 1000 people free access to give it a try and play around in there with me. Just go to WeirdDarkness.Locals.com and use the promo code Weird1000 to get your free access for a full month. That's WeirdDarkness.Locals.com promo code Weird1000. Looking forward to hanging out with all of you who want to become official Weirdos.


Ladies and gentlemen a silent mic welcome back to another a fixture form rendition where I take your guys's form And I coach you up as best as I can fo free If you want to get involved we need three reps at 70% email to ask mikke at gmail.com we got some sumo deadlifts here in Virginia Tech shout out to Virginia Tech Overall my man looks really really solid What I'd like to see is if you can get those shins a little bit more vertical Your body weight slightly behind the barbell almost like you're falling back Because your starting position is pretty decent, but what you can see is right there by the knees The bar gets too far away from you We want to keep that barbell on our skin as much as we can it's gonna keep our weight falling back also proper bar path as well As is close to the bar. We keep it to our body the lighter and more efficient. We're gonna be My man with some conventionals. We got a couple issues to start with You can see those hips shoot up a little bit in the knees lock out before The hips what we want to do with the conventional And typically the sumo but not always is we want to have our knees And our hips lock out at the same time. So what we need to do Try to get some tension. We got to get those arms a little bit straighter not only to save that bicep But also we want to get that chest up a little bit more and body weight again behind the barbell What that's going to allow us to do is yes We're going to bend our knees and use our quads to get the weight off the ground But we need that tension in our hamstrings and glutes before we pull and pushing back almost falling back If you have a straight line here and you think about it Falling back or pushing your hips Towards the wall behind you We'll get that tension and that'll allow us To Properly lock out the hips and knees at the same time if there's tension our hamstrings If there's not tension in our hamstrings and we just push with our quads our hips will shoot up Body weight will go in front of the bar and we'll have an instance like that Also with your lock out and you stand tall and straight flexing your quads and glutes not lean back Get to work We got more conventional pulls overall pretty dang solid my man You have a good job of locking that low back in Before you pull the starting position.  We're getting a whole power lifting rendition in Overall, this looks like a pretty dang good squat if I do a say so myself You know a little bit of collapse of that knee What I'd like to see perhaps two different things is toes a hair straighter What I'd experiment with first is moving your heels outward Not your toes actually straighter, but straightening those toes By moving your heels outward continuing to push those knees forward And overall pretty solid you're pretty long femurred From your knee to your hip is pretty long So we're going to have to find ways to kind of work around that overall you're doing pretty dang decent with it You see those hips shoot up a little bit and you get a little bit forward coming out of the hole So some pause squats or even just breathing embracing a little bit harder with your lats and stomach And then driving your traps into the bar out of the hole will allow you to maintain that same position Once we find a position or a torso lean We want it to stay the same kind of like this gentleman throughout the whole thing The entire rep and often out of the hole if you get some stretch reflex or you lose tightness Those hips will move and you'll get shifted forward. That is not optimal Overall right now Even though we wanted sets of three of my man's getting his hypertrophy on trying to win that trophy getting the quads built Form is really solid, especially at the end there. It looks a little bit better What I'd like to see and I've spoken about this many a time I did a video just on touch and go deadlifts, but it transfers into you know Even though there's no such thing as a touch and go squat But kind of and no such thing or there is such thing as a touch and go bench I'd like even if you're doing a set of eight to think about it being eight individual reps In other words, just don't rush be quick, but don't rush be quick, but don't hurry You're rushing a little bit here So I'd like you to see you be a little bit more composed between each rep Making sure you're flexed and tight and making each rep really count As though you're doing a maximal single and that's whether you're a powerlifter or not Being explosive being powerful in each rep has shown to help build hypertrophy by flexing the muscles harder Recruiting more muscle fibers regardless of the weight That's kind of been a theory cat compensatory acceleration training for a long time and strength But more recently in science has proved to also help hypertrophy So there's kind of no reason why we shouldn't lift explosive as long as we're using the correct form And best way to do that Focusing in on the individual rep focusing in on being perfect. My man right here hitting some sumo's overall looks really really solid Now each coach may have a little slightly different opinion on this Depending on how wide you are and where the knurling is on the bar I personally would rather see a lifter and it works for me not all That if you have decent grip strength to have a perfect line from your shoulders to the bar Two one make the range of motion a little bit better And then often allow for less rub on the chub If you get less rub from your hands to your thighs on the sumo So right now you're a little bit wide and the the path that your hands have to go over your thighs is great And there's some separation there. We want that bar on your skin So I would move that grip in just a hair Even if one or two fingers is on the smooth as long as you can hold on to it looks like you're hooking I mean you might even be double overhanding you son of a b you tough son of a b So I'd either try double under or excuse me mix grip one under uh or hook grip It looks like it's slipping a bit And moving your grip in about an inch or two This is going to allow again shorter range of motion and also allow less rub Oh, maybe you are hooking because it looks like you're in pain my apologies for your pain rip to the thumbs But overall your form is pretty dang good You're getting a really good solid position on that starting you get that back really flat Shins is fairly vertical and your flexion your quads really really well. Um as much as you can Move that grip in while still doing everything else perfect And then as much as you can flex those lats and that's going to be the tip to everybody I say in every single video whether you think you're doing it good But whether you are doing it good or you're doing it poorly You can never focus too much on flexing your midline Stomach sides and low back into that belt flexing hard and flexing your lats You can just never over flex them in the squat or deadlift That's one of the main cues I try to teach myself where I think my technique is pretty solid Obviously, there's always things I'm trying to improve on nothing's ever perfect But the one cue I'm always telling myself when I'm getting underneath the barbell to squat Or I'm setting up on the deadlift is flex my lats and flex my stomach as hard as humanly possible To help that midline rigidity the transfer of power as well As staying safe keeping that spine safe Overall looks pretty good right here. You get a little shift in those knees One thing I like to see is a little bit maybe better contact with the ground Some people talk about torque Some people talk about three points of contact with your foot whatever it might be for you But have some real good contact with the ground and what you want to do is cause some Tension in those hips so you're forcing your knees out You can see your knees moving in and out. Another thing we do is just move that stance in It might be your arms getting in the way of your knees But you can see at that starting position to about six inches those knees are wobbling around And if anything is wobbling around if anything is not as stable as it could be We're not going to be as strong as we can be Stability is a big piece of Strength right if a bridge is super wobbly Obviously, there's some give to it because it is moving with the natural course of whatever ocean is carrying or the earth or Whatever cars are driving on it. There has to be maybe a hair bit of a give But if something is too wobbly, it's not going to be as strong another Great example of from the side what we want to do is always push our weight backwards getting our body weight Behind the bar if you look back about four videos. I have a video talking about deadlifting like a pro And getting your body weight behind the bar. So we're not squatting it up We're actually just pulling it up and keeping our hips back. We're moving on to some sumo here Kind of looks like a little stiff leg of a sumo Overall really solid. I wouldn't say there's anything wrong with this pull per se, but I think we can optimize it You can see your knees are just a bit in From your legs from your ankles and your foot What I'd like to see is that knee over your mid foot if the knee is over your mid foot You'll be able to flex that quad a little bit better. So move that stance in about an inch per side Really force those knees out get into position and then flex your quad my friend We're moving through this one. We're we're hitting about coach a half the world in one episode All right, my man. What we need you to do is slow Down, uh, both the way up and the way down I always like to see control on the way down to start And I think that's causing part of the bad habit of right there having zero tension And then just cranking on the bar and that entire load is going into your lumbar your low back What we need to do like everybody else again talking back to the video about deadlifting Like a pro where I give more of an example of myself. I explain it. Maybe a hair better What we want to do is right there you're initiating the pull with your knees What we want to do is hip hinge the difference between a squat And a deadlift is the hip hinge itself and the hip hinge is difficult to explain It's difficult to feel it's difficult to learn But we want to have the majority of the tension into our hamstrings So right now all your tension is in your lumbar your low back and in your quads So what we need is hips a little bit higher Chin down a bit and then get your body weight behind the barbell slow yourself down lower the load for now To then learn the proper patterns that in the future you can not only lift more weight But you can lift more weight efficiently handling more volume over time build Which will build more muscle and strength in the long run We need to get that weight out of your low back my friend Uh-oh, are we finishing with a keeper really really solid deadlift right there Really really solid deadlift you can see my man has full tension the back is super flat Most of his body weight is behind the barbell tension is in his hamstrings You can tell because everything is moving at one piece the knees the hips Everything's locking out and moving perfectly. That's a hip hinge opposed to the lift before is more of a squat I appreciate you guys smash the thumbs up be sure to subscribe dropping four videos a week solid mic. I'm out of here


Jaws is actually a lot more upfront in your face. This movie, there's so much more that's happening behind the scenes. Yeah, more subject matter. It has more to do with the human condition. Yeah. And remorse and doing something you don't want to do. And like, it's... Yeah, there's a lot of emotion in this movie. So much emotion. And the character arcs for both Nolan and the Whale. Yeah. Because the thing is, you don't really think of the Whale as a character, but the Whale is like the biggest character in the whole movie. Yeah, exactly. And there's so much deeper than any of the characters in Jaws.


This is a historic day. Today is the first day of the first academic year of Colorado Christian University's second century. It looks kind of like a block party out there. It looks like a lot of fun with the balloons and the banners and the sun. So thank you all for coming. This is a day that many of us have been waiting for. We've opened a brand new beautiful residence hall here on campus that will serve 300 students here at CCU.  Because here in an hour, a lot of these new students back here are wanting to get in their room. So I'm the only thing that's between you and getting into your room. I understand that. New students are coming and students are returning in all-time record numbers and with extraordinary academic achievements in their high schools as they come here. I'm excited to have another great addition to our campus and I look forward to seeing how Yetter Hall adds to the community at CCU. We're welcoming a record number of new faculty members today. We congratulate you on the beginning of your second century and congratulations on this wonderful occasion today, CCU. We begin our second century in a very, very strong position. Not because we have a big bank account, which we do not. Not because we have a wonderful new classroom and office building, Leprino Hall. Nor is our confidence resting upon this great building, although this is a dream come true. No kidding, to have a facility like this of the size and quality and appearance and efficiency and functionality of Yetter Hall is really something quite spectacular. But that's not why we're confident. The reason that we're so confident about the second century of this university is because of Jesus. In the one who existed before history began, who became the greatest teacher in the history of the world, a great miracle worker without parallel, who preached a gospel of love and salvation and reconciliation and giving us the opportunity to have rich, full lives now and to be children of God and go to heaven to be with him forever. That's why we're confident about Colorado Christian University's second century. This wonderful new building is named in honor of Archie Yetter. His name has been on a building which we respectfully demolished a few days ago. Well, we had to do it because it sits on the site where we intend to build a 58,000 square foot student center. Archie Yetter loved education and he supported him. He served Rachmont at CCU Heritage School as president from 1954 to 1963, pulling the school out of a severe crisis. I can't say enough how grateful we are as a family for this honor. My dad would be so surprised if he was here and would think this is really a lot of stuff about him that's not important. Only what's done for Christ will last. CCU will absolutely remember and continue to honor those who have gone before us, those whose shoulders we stand upon as we move forward into our second century. Starting today, 300 students will make this building come alive and I'm sure they will all night long. I thought about that they'll sleep here, but then I thought, no, probably not some of them. Great is thy faithfulness, oh God my Father. Lord, we come together today humbled and overjoyed with what you have allowed us to build for your campus and students. We thank you for the resources which allowed us to complete the plans we envisioned. Now we want to dedicate this building, now so appropriately named Yetter Hall, to serve your purposes. May joy and praise to God Almighty echo throughout the halls of this building and the name of Jesus Christ always be lifted up. Ready, one, two, three. Yetter Hall is open for business.


Cole was pretty clear when he was at the podium. He's ready to go for opening day.  I've been watching the same games you guys have been. Stuff's been there. We've pushed him obviously pretty hard here. These last two, I think he ended up at 87 today, coming off of a really hot day outing five days ago. I thought in a lot of ways his fastball was even a little bit better today. He got clipped a couple of times. But I thought the quality of it, the profile of it, everything was really good. Yeah, and now he gets that extra day now to recover going into that opening day start. And yeah, I'm excited for him and where he's at right now. Tyro Estrada has had a really good summer camp offensively. Mike Ford with the homerun tonight. A lot of depth on this team, but how difficult does that make some of these roster decisions coming up? Yeah, I mean, it does. We've got good players. And I think that's part of the reason, especially in the early going here, where we do have a little bit of an expanded roster. And obviously, only having a three-week build-up here, we're going to lean on that depth and rely on it. And those are potentially some key guys for us. Domingo Herman posted on social media that he's left baseball. Can you shed any light on that? Not really. I know he's in the States visiting his child right now. But beyond that, I don't really know much about it. I just heard something like that. But I don't really have much to say on the situation. Thank you. Brendan Cuddy, go ahead and unmute. Brendan Cuddy. Yep, sorry about that. Aaron, what do you think of the fake, pumped-in crowd noise? Early in the day, I really didn't like it. It sounded kind of like we were trying to tune in our AM radio and trying to find the station and we couldn't find it. I felt a little better with it during the game. It did feel a little bit more natural. So hopefully there's some tweaking of it or whatever. But as it wore on and during the game, I was OK with it. What did you think of the impact moments, for lack of better words, when a ball was struck and the crowd went wild? Did you notice anything about that? Maybe once or twice, but not really. It was a little just kind of locked into the game. So I don't think I noticed that much. I did notice early in the game on a fly ball to right field to judge that a routine fly ball that the decibels went up or whatever. I did notice it then, but after that, it was kind of secondary to me. Thank you, Aaron. Yeah. I don't see any other hands. Do we have anybody? I see Kenny there. Dan Martin. Danny, go ahead. Aaron, I'm just curious about tomorrow. Are you planning on a regular lineup? We have, well, I mean, depends what you mean by regular lineup. But some of our guys are not going over there. We have a few of our guys. Essentially, I've kind of looked at it as counting tonight. I was counting tonight as a game in four in a row. And for the most part, guys are playing three out of four. You saw Glaber get just 2DH at bats tonight because he's going to play in all three. But we'll have a few of our regulars not there tomorrow. Meredith, go ahead. Aaron, you mentioned DJ was on the field and hitting the cage. How did he come through everything? Is there a plan for tomorrow? Yeah, there is. He'll work out again, hit, and do his defensive stuff. He'll obviously stay back here. We have a group staying back here and go through a normal BP routine. I know he's got to work out in the weight room as well. So we've kind of mapped out at least the next four or five days with him. And we'll start getting him some live looks, some live at bats probably in the next couple of days. Thank you. Yeah. Aaron, thank you.