Let's do it. What's going on everyone? Sam here with late sports cards ripping 22 tops dynasty baseball hobby 5 box case break number 18 left side serial numbers. Here's a look again at your random results. As always you can find those on the websites under the results tab as well as the link in chat. Yes, probably Don Russocker group breaks. Group breaks? Okay. Probably. Yes, probably to Don Russocker group breaks. Yes, absolutely maybe. That doesn't help. All right, let's go. Right here. Right here. Let's go. God. I miss a little. I haven't spoken to anybody. I know. Sean just got too big time for the stream. No. Sean got, Sean became too Hollywood for the stream. No. Good luck here guys. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Shhh. Get the clarity with part of that Cardinals patch. That's nasty. That is sick. Logo. It's gotta be from the Powder Blue Cardinals i'd imagine. That's sweet. That's part of that logo. That bird sitting on the bat. Didn't see a lot of like streakier like meah autos and Dynasties which is good. Right, five of five that is Frank L. Jonathan India. Partial logo as well Part of that's like the the seed that they wear on the chest Which is really cool like on the heart five of five that is 21 rookie of the year in the nl John's in India grads on that there Frank Okay, let's go Frank Right see we got up next That is empty That is gonna be now eight of ten going Eric W Aaron judge All rise That is sick To colored patch auto a little bit of a pinstripe in there. It's judgment day. Let's go MVP Aaron judge. Let's go Eric Eric W picking that one up. Let's get after it Eric. Congrats, buddy Right see we got next that is a redemption so unless it's a one-of-one that will be random to everybody Dynasty autograph patch card. So that'll be a random to all Buster Posey nice for the Giants Could luck to everybody on that one. We'll random that one once the break is over Dynasty autograph patch card of Buster Posey All right, one more to go see a one-on-one see a no no no. I hear you Vaughan. I hear you It's awesome. That is a Yankee. It's gonna be four of ten Of Christian Yelich very nice That's gonna be three colored patch auto for the brew crew four spot ammo D. Let's go ammo. It's up Zach Four of ten Christian Yelich former MVP former NL MVP. All right guys, let me get this random setup for the posey Bring you over to the random screen gonna roll the dice whatever name is on top after Six dice rolls. We'll get the Buster Posey. Good luck everybody one two three four five and six going to John a John a getting the Buster Posey congrats John. There you go my friend All right, like I said guys that is gonna do it for the break one more time I got to look at this Aaron judge because that is your former your most recent MVP in the ale Just so you know I his he's on the Yankees right he's a Yankee MVP, right? Yeah, Yankee MVP Yeah, that's what I thought perfect. Um, thank you guys again for getting this filled up on to number 19


This video is sponsored by Squarespace. Hey, welcome back. I'm Nico, and this is part four in my series on preparing for photographing the April 8th, 2024, total solar eclipse. This video is going to build on the last part, part three, but we're going to add an additional wrinkle here, which is a tracker, also known as a star tracker. Although in this case, of course, we're gonna be tracking our local star, the sun. And it does, most trackers have some kind of built-in solar tracking rate, which this one does. And another one I'll show you in a second. Either you have one or maybe you can buy one quickly. You really need to start practicing now with this. And there are a few advantages to using a tracker over just having the camera and lens on a tripod. Basically, this is gonna keep the sun roughly centered in your field of view for the whole eclipse. If you're not tracking, then you have to manually keep moving the sun back into your camera's screen here. Because the sun is going to, of course, keep moving due to the Earth's rotation, so we just have to keep re-centering it. The exception to that is if you're using a very wide-angle lens where the whole eclipse event fits into the field of view. But assuming you want a more zoomed-in view with a telephoto lens like this one, that's the big advantage to a star tracker, is not having to manually keep the sun centered because this device does it for you. A smaller advantage, but it may be important to you, is you can take much longer exposures with a tracker without any blurring from the Earth's rotation. And this allows for the capture of some rarer phenomenon during totality, like earth shine. And earth shine is the little bit of light reflected off the Earth and back onto the lunar surface. And to capture it, you're gonna need a long exposure, so long that you'll completely blow out the corona, as you can see here. But I think it's pretty cool, even though it's noisy due to there being so little light actually hitting the moon from the reflected light off from the Earth. An advanced topic I'll get into later, in a later video maybe, is that you can use HDR high-dynamic range techniques to combine your earth shine photo with your other corona photos to get something like this image. Another reason for long exposures during totality, where you might want tracking, is to capture the stars that are visible during totality. And this year, we also have the chance to capture a fairly bright comet during totality, or we think it might be bright, P12 Ponds Brooks, which will be about 25 degrees away from the eclipsed sun. And I'll talk more about the comet towards the end of the video, and show how to plan for it if you're interested. Okay, so let's get into it. I'm gonna skip over calculating exposure lengths and things like that, since I just talked about that in the last one very recently, so you can go and watch part three to see that. You'd be using the same exposure calculator for a setup with a tracker. One thing that I should have mentioned in the last part that I forgot is that I shoot raw on my DSLR or mirrorless camera, and I process all my photos with Adobe Camera Raw and Adobe Photoshop. And shooting raw and processing them that way gives you plenty of latitude when it comes to exposure.  You can just bring the exposure slider one way or the other, and it's gonna look great. You can shoot JPEG only and try to get everything perfect in camera without any editing, but it just requires a little bit more work and testing to make sure that the suggested exposure lengths from the online calculator are accurate to get a good exposure with your particular lens and solar filter and camera. And so you might have to adjust that shutter speed up or down a little bit to make sure that you have the perfect exposure. And one more thing I forgot to say in the last part is that, and this is even more relevant here now that we have the tracker, is that if you're using anything that uses batteries, which you will be if you're using anything digital, you need to bring spare batteries. And I'd suggest starting with fresh batteries and then also, of course, just be cognizant of your battery level, change out the batteries well ahead of time because the last thing you need is to try changing a battery last minute right before totality starts or even worse to lose power during totality because the battery dies. Many trackers have two ways to power them, either internal AA's or connecting an external battery. If yours is like that, then I'd suggest having both options available, just in case maybe start with the external battery and then it can always fall over to the internal batteries. Okay, so that's that and we can now get on with the procedure with a tracker. And the first thing we're gonna have to do with a tracker like this is polar align it. Now, if you can get to your desired eclipse location the night on the path of totality the night before and leave your tracker out overnight safely, the most accurate way to polar align is gonna be with the polar scope right here, the polar scope built into the tracker and using the star Polaris at night. And you just put the star in the right spot on the reticule on your polar scope and many of you have done this before if your nighttime asked to photographers but I'm sure many of you are also not gonna be able to get to the spot you're shooting from the night before. So our next best option is daytime polar alignment. And daytime polar alignment is definitely good enough for solar tracking for this purpose. In 2017, I went pretty old school with my daytime polar alignment and just use shadows, string and a compass and some information on the magnetic declination for that particular location. Nowadays, since most of us are carrying smart devices, a smartphone, I'd suggest a smartphone based method for this and it's available on both iPhone and Android. They're very similar. They just use different apps. Now, no matter what kind of phone you have if you use a case with a magnet on it you need to remove that case. The reason I have this case with a magnet on it is it's easy to stick on my little adapter when driving but I wanna remove this case. I'm planning on maybe getting an alternate case right before the eclipse but for now just for demonstration I'll just go caseless with my phones and be careful. And the reason is this magnet will totally mess up your phone's internal compass which is what we need to be accurate for this method of daytime alignment to work. Okay, so the next step is we wanna calibrate that compass which you do on any phone just by moving your phone in a figure eight pattern through the air with the Compass app open and that calibrates the compass. And then next we need to attach the phone securely or semi securely in such a way that this part of the phone the top of the phone is pointing north. And what I suggest for this is to make something out of wood like this just scrap wood is fine and attach it to the tracker or mount and then rubber band the phone to the wood. On iPhone we're gonna buy the PS Align Pro app for $3 and follow its daytime polar alignment routine which is quite detailed. On Android we're gonna buy Polar Aligner Pro app for 350 and follow its beta daytime alignment routine which when it comes down to it is very similar. These are by different developers so they have a different look but it's really the exact same concept which is just to use your phone's compass and then use the Altitude and Azimuth knobs on your wedge here to get the mount polar aligned by putting this little dot right in the center of the crosshairs. I just tried this with both phones and they agreed perfectly. So I think this is gonna be a really good method for tracking the sun. And thanks for everyone who has mentioned it to me because it's a lot easier I think for most people than the string and shadow method. Okay, so once you're polar aligned with your tracker you wanna be very sure not to bump your mount. On a tripod like this it's very easy to just bump into the tripod and then you're out of polar alignment and have to redo the whole thing. It has to stay stable. The next thing we have to do is find the sun, point our lens at it and with the filter on of course and turn on solar tracking on the mount. If you're using a normal Star Tracker like this, the Star Adventurer 2i, you would do this completely manually by just loosening the clutches here and turning the camera until it's pointed at the sun. You can use a solar finder of course and then once you've found the sun you just tighten back up the clutches. And then once you've centered the sun on screen like that you then just turn this little dial on the side to the sun symbol and that will turn on solar tracking and now the sun should stay centered. If it doesn't stay centered, if it starts to drift you might just have to fine tune your polar alignment a little bit and you just fine tune it until the sun does stay centered. So it's a good idea if it's a nice clear day on eclipse day to start doing this well ahead of time, way before C1 before the partial eclipse starts. Okay, I've switched out to a go-to mount here to make some points about go-to mounts and the GTI specifically. This is the Star Adventure GTI. There's a little bit more complexity here to think about. The first thing is that the GTI with the Sinscan Pro app has a sun safety feature built in.  It's here, the bypass is here under the settings to advanced feature and you just have to turn on observed sun. It does make you answer a math question to turn it on. The point of all of this is that they wanna make sure that you know to put a proper solar filter on before pointing your telescope at the sun. We know that so we're good to go. We can turn on observed sun. Now, just because this has go-to doesn't mean that it's going to put the sun right on screen. It will get it close but you will probably still need a solar finder to fine tune it because in the nighttime we can calibrate the go-to system on the GTI here with Star Alignment. We can't do that during the daytime unless we get there the night before and do it. Okay, so anyways, you're gonna have to use a solar finder. You find the sun. You turn on solar tracking here in the app and then it's very similar to the other track or the two I but with one important exception which is by default the GTI will do an auto meridian flip five degrees past the meridian. And guess what? At my location that would mean it would auto flip from one side to the other during totality, which would be a complete disaster, right? You would probably miss most of totality if that happened. So we have two options and the better option will depend on where you are along the path. For me, the best option is to flip before totality. And the reason for this is I have about 12 minutes to just manually go to the sun before totality and it will flip to the other side, right? And then so I'll re-slew, I'll center the sun, I'll get everything set up and then I'll still have a few minutes before totality starts. At other locations, the timing may be different and it might make more sense to slew to the other side after totality or just turn off the auto flip entirely and just let it track a little bit past the meridian. Now the GTI will only track so far past the meridian before it has a hard stop. I think it's about 15 degrees it looks like. So you will have to flip at that point. You can turn off the meridian flip with most go-to apps. You know, if you're using a Sinscan app and not all mounts is it really even necessary to flip, right? With the GTI, like I mentioned at 15 degrees, there's a hard stop but other mounts can just keep going and as long as your camera isn't hitting anything on the tripod, you might be good to go. Do you just keep tracking past the meridian all throughout the eclipse?  But the important thing with any of this is be very aware of it. Be aware when the sun is going to cross the meridian for your location and have a game plan so that you're not gonna get into the situation where it's your mount is auto flipping the telescope or lens or whatever you have during totality or right before totality. Okay, and then as promised here at the end I'll comment a bit about the possibility of capturing a comet during totality, specifically the comet 12 P Pons Brooks and it's going to be about 25 degrees away from the eclipse sun. 12 P Pons Brooks has an orbital period of 70 years. So it's been seen before observed before in 1884 and 1954 and now we have it again in 2024. I've already been able to get a quick snapshot of it. It looked like this at 350 millimeter focal length and I'll be trying to capture a better shot of it during the new moon period in March. But it's a little bit tricky because it's one of those comets that's only visible right now at dusk and dawn and pretty low in the sky close to the horizon at least at my location. Except of course during the eclipse it will actually be high in the sky, right? Up by the sun. And the big question is will the comet be bright enough to see or to get a good photograph of it during totality? And the truth is no one knows for sure. Comets are unpredictable in their brightness but if you wanna try to photograph it I think the coolest shot would be fairly wide to get both totality, the eclipse itself and the comet in the same shot. Now that comes with some risks because it's a wide shot so the comet might not be big and bright enough to be visible in a wide angle shot. But if you wanna try, let's look at Stellarium to get some ideas of where it will be in the sky and what field of view would work. Okay, here we are in Stellarium. This is a free program you can download for this kind of thing. The first thing we have to do is actually add the comet to Stellarium's database because it's not in there by default. This is a little convoluted but should be fairly easy to follow me here.  On the left hand side of plugins find solar system editor, then click configure. Then click solar system here, solar system tab. Then down here click on import orbital elements. Then choose comets. And then where it says select bookmark, click the little down arrow here and choose Gideon Van Butenin comets and click get orbital elements. Okay, then it's gonna come up with this really long list of comets. Luckily this is searchable so I'm gonna type in 12p and there's our comet right there. 12p Pons Brooks, we can check it and click add objects. And now you might have to restart Stellarium but it should be searchable now. If we open the search window and search, you should be able to now search for it and it will have its orbital elements for any day, any location on Earth. So now let's get us to eclipse time.  Then open the date time window and let's go to April 8th at 140. There's the eclipse, right? And here's the meridian line. There's Jupiter and Venus. And what we wanna do is we wanna visualize well what kind of lens would work to get both the eclipse and the comet in the same shot?  You could also just go after the comet. You have its RA and DEC right here. So you could just put those in to your telescope mount and slew to the comet during totality and try to take a picture of it more up close. That might be fun. But I'm gonna try this wide angle shot idea. It might not work, but I think it's worth a shot. So to visualize that, what you can do is go up here to what is this called? The ocular plugin and choose an image sensor. So I'm using a full frame camera here. And if you're not using one of these photo lens, 24 millimeter, 35 millimeter, you can also put in your own. So I looked at 35 and 50 and thought, you know what? I think I really wanna go with 40 and I have this really nice Sigma Art 40 millimeter lens. And then I can just try to frame up here. And you can see that if I get this framed up correctly, I'll be able to get Venus, the eclipse, the comet and Jupiter all in the same frame. And I think that might look pretty neat. And if I do get a good image, I would feature it on my personal website, which brings us to today's sponsor, which is Squarespace. I use Squarespace for my personal portfolio at NicoCarver.com because Squarespace makes it truly easy due to their website builder and their professional templates to really allow my portfolio to shine. There's a template for any kind of website you'd wanna make, but then of course, you can customize your website and Squarespace has a fluid engine. So these designs look great on mobile devices as well as desktops. I've also found Squarespace takes the hassle out of managing a website. There's no more fiddling with CSS for hours just to get something to look right. And there are a huge amount of included features to Squarespace, like if you need an online store that's built right in. So if you're looking for any kind of website, whether it be a portfolio of your photographs or a site for your business, I think you're gonna love Squarespace. You can get a free trial today at Squarespace.com and when you're ready to launch, use Squarespace.com slash Nebula Photos for 10% off your first purchase of a website or domain. This has been Nico Carver at Nebula Photos. Clear skies, everyone.


A group under the aegis of the National Youth League has called on the independent National Electoral Commission, INIC, to announce the correct resort of the just-completed elections as captured by the bimodal voter accreditation system, BEVIS. The group who staged a mass protest at the headquarters of INIC on Tuesday staged a follow-up protest today from the Unity Fountain to the National Assembly. And also, we all know that he was not fair, he was supposed to be a good referee, but he was not. So we're just asking him to do the right thing, to do it for him. Professor Mahmoud Yaku has lied to Nigerians and has abused the right of our choice. We hereby pass a vote of no confidence and we call for his immediate sack and prosecution. We cannot afford to continue the culture of performing lawlessness without consequences. The lawmakers should be inside of the justice, equity and fair play. Our call to you is to take a stand with the people of Nigeria, whose place you hold in this hollow chamber. Updates


The study found that ultrasonic U.S. radiation can enhance the strength and dying properties of cellulosic fabrics during dying process while reducing the dying time, temperature, salt and dye volume used, making it a cost-effective, time-saving and eco-friendly tool for textile processing. This article was authored by S. Adeel, S. Kiran, T. Golza, and others.


Hey, everybody, I'm Adam. I'm a software engineer and community lead at a payments company that I'm not going to name. Can I just get a quick show of hands here? How many people here have taken an algorithms class, either in college or on Coursera? And who has never taken one? OK, that's me. It's not just symbolically raising my hand. So hopefully this talk should have something for both of you, but especially the second group. So this talk is called Python for Homec. And the slides and my speaker notes will be posted to GitHub after the talk is done. So this is Wikipedia's picture for Homec. And so, yeah, Homec is defined as the profession and field of study that deals with the economics and management of the home and community. So I'm going to walk through two problems that show you how to do things in your home more efficiently and hopefully remind you that programming can help you reach a better solution to problems in your everyday life. So this is not a picture of me with glasses on. This is a picture of a co-worker of mine, Jonathan. He's the one who inspired this talk, as well as being an awesome software engineer. He's also a farmer and a do-it-yourselfer. This is his garage right after he moved out the cabinets that I really wanted to get a picture of. But the problems I'm going to talk about today are real problems that he had at home last fall. These aren't made-up examples. They're real. And the first problem came up when he was working on this countertop right here in the picture.  Hopefully, you can see that. And this particular one is L-shaped and joined along a diagonal, which means that every piece of wood you see there is a different length. No two are the same. So Jonathan's problem was, how does he cut all those different length pieces out of the standard lengths of wood that he already had at home? So just for some terminology, I'm going to talk about boards and cuts. Boards are the pieces of wood he has. Cuts are the lengths of wood he wants to have. So in this example, you have a seven foot long board and a five foot long board.  So as you see, if you start out by cutting the three foot cut out of the shorter board, you're not going to have enough leftover to make both four foot cuts. But if you start out by first making both four foot cuts, then you actually have enough wood to get all the pieces you need. So it's important when you're trying to cut boards into smaller lengths that you think about what order to cut those pieces in. So let's figure out an algorithm for this. We know that our goal is to find places for the biggest cuts first. So let's just do that. Let's start from the biggest cut and go through all the boards trying to fit it in. So in step one up there, you can see that first I take a four foot cut out of the smaller board, then in two I take a four foot cut out of the bigger board, and then I take the three foot cut out of what's left of the bigger board, and I take the one foot cut out of what's left of the smaller board. So let's look at the countertop again. Our example was great. There were only four cuts that we needed and two boards. Well, as you can see in this countertop, there's actually 64 pieces you have to cut. So way harder to think about by hand. And instead of having two boards or cutting them out of, there's actually 35, and there are three different lengths. This is all, again, real information from the actual countertop you made. And so keep in mind that there are only three different lengths, despite there being 35 boards, because that'll be important later. And one thing I haven't mentioned so far is if you see those little black lines in the middle of the boards, you actually lose some length every time you use the saw to make a cut. And that's called the kerf, K-E-R-F. And that's what you lose every time you use the saw.  So all these details are why we need code to solve this problem, rather than just doing it in our heads or on paper. So here's the code. We're going to walk through it, so you don't need to get it all right now. This is the entire algorithm. It's less than 20 lines. And don't worry if, even as I walk through it, you have some trouble following exactly what I'm saying. You can always come back to the video or look at the code on GitHub later. So first of all, we're going to call this method greedy approximation. And the reason it's greedy is because we take the biggest cuts first. We take as big pieces as we can at the very beginning. And it just needs three pieces of information. It needs a list of the lengths we want to cut, a list of the lengths of the boards we have, and how wide the kerf of the saw is. So different saws will have different ones. So the next thing we're going to do is we're going to sort the cuts in reverse order. So that means we want the biggest cut first, then the next biggest one, and the next biggest one all the way down to the smallest. Because like we said, we want to be greedy. We want the biggest cut first. And then finally, we're going to sort of annotate these list of lengths. So instead of just having the length of the cut and the length of the board, we also want to keep track of which cuts we found a place to make and which we didn't in case we can't find somewhere for everyone. And we want to track how much of each board we've used so far, so we know how much is left over. And we want to track which specific cuts we made out of each board. And this is really the output of this program, is this list of cuts for each board. Because that lets us go use the actual saw and make the cuts physically. So for each cut, and remember that they're already sorted, we want to go through each board. And if the board has already been used, we don't just need to cut the length of the cut. We also need to take into account the curve. So we don't need to do that for every cut, but only everyone after the first. Because if you cut a board in half, you're only making one cut, not two. So you need to adjust the length to account for that. And then if the remaining length used, if the length remaining on the board, which is its length minus the used bit, is at least the length that you need, you can mark that you found a place to make the cut. You add the new length to how much of the board you've used so far. And you mark that you made this specific cut from this specific board, so that you can again use the actual saw later. And since we found a place to make this cut, we don't need to keep looking at more boards for a place to do that. So we just break out of the loop. So you may have noticed here that I skipped something. We sorted the cuts, but we didn't sort the boards. This is actually kind of important. The order does matter. And this problem is a particularly good example of that. If we were to sort all the boards from smallest to largest, we wouldn't be able to find places to make 17 of the cuts we need given this algorithm. But if we sort them from largest to smallest, we can actually find places to make all of the cuts we need except for one. So it's just a huge difference depending on how you sort them. So if we can make every cut but one, that's actually good enough. Since this is a real world problem, it's OK if one of those pieces of the countertop is made up from two smaller boards. So that's great. And we already really have a solution. But it is possible to do better here. Remember that Jonathan's boards are only of three different lengths. So we tried smallest first, and we tried largest first. What if we tried smallest, then largest, then the ones in the middle? And it turns out if you do it that way, which you can just do manually, there's only three different lengths. It's really easy to reorder them and try them differently, you actually can make every cut. So don't be afraid to use a little manual work to add to what the computer is doing for you. Sometimes it can get you a better solution.  So let's jump from the practice, from this example to theory. There is a very classic computer science problem that this is a virgin of. Can anybody, based on what I've said or based on this picture, tell me what that is? Yeah, the knapsack problem. So you've got a bag, and it can hold a certain weight, in this case, 15 kilograms.  And your goal is to maximize the value of the objects you put in the backpack without going over that 15 kilogram weight limit. And how to pick those items best is the knapsack problem. So if we wanted to apply our algorithm to the knapsack problem, where you have a separate weight and value instead of just one, you'd have to combine the two by taking the value to weight ratio. Since our algorithm only looks at, in this case, length, only looks at one criteria, not two different ones. So there are lots of different versions of the knapsack problem. Some of you may have seen this XKCD comic before. If the value and the weight are the same, and you have to exactly hit the weight limit instead of just being under it, it's called the subset sum problem. And so if you had a menu with different prices on it, and you said, I want exactly $15.05 of appetizers, then the waiter trying to figure out which appetizers that meant you wanted would be an example of the subset sum problem. So on the other hand, if instead of having to hit the weight limit exactly, your weights equaled your values, but you had multiple knapsacks, you didn't just have one, you would have the cutting stock problem. And it's often thought of in two dimensions, like in this image, think of this as a big piece of paper, and we're cutting a bunch of smaller pieces of paper of all different shapes and sizes out of it. And so how to pack those different cuts into this two dimensional space is the cutting stock problem. And so this is what we just solved, except that when we solved it, we only had one dimension length instead of length and width. But it's the same basic idea. So why is all this important? Why is the knapsack problem classic? Why did I just spend 10 minutes talking to you about countertops? The answer is that let's think about your data center that you have at work. Maybe it's in the cloud. Maybe it's a physical data center. It doesn't matter.  And each of those servers, maybe one has seven gigs of RAM, and one has five gigs of RAM. And two of your VMs have four gigs of RAM. One needs three, and one needs one. If you want to pack those VMs efficiently onto your physical servers, you need to solve the knapsack problem to figure out where to put each VM based on its RAM needs. And if you end up with wasted server capacity and not enough space, if you don't do that efficiently. Now, in real life, it's not quite the simple. VMs don't just need RAM. They need CPU time. Sometimes they need multiple cores, and they need IOPS. So it is a multi-dimensional problem, much like the stock cutting problem pictured here rather than the version we've solved. But it's the same general idea. So this is a problem that you do actually have to solve if you're Amazon, especially, and you have a huge number of VMs to allocate. So if you're interested in learning more about the knapsack problem and more advanced algorithms for solving it other than just greedy approximation, Wikipedia is a perfectly good place to start. So let's jump from here to talking about the second problem that Jonathan had. The second one involved his pantry rather than his kitchen. Unfortunately, unlike the picture of the countertop, this is a fake. This is not actually his pantry. But just like in this picture, Jonathan has lots of different kinds of preserves because he's a farmer. So he grows stuff and then preserves it for the winner. And his family eats this stuff all winter and all spring until they get fresh produce again at the beginning of the summer. So what he really wants is to have as much variety as possible during the winter. He doesn't want to eat all the raspberry jam first and then all the blueberry jam. He wants to spread them out.  So let's talk about why. Let's say you've got the same number of three different types of jars, red, blue, and green. If you wanted to sort of have a lot of variety, it's not that hard. You just sort of roughly space them out evenly through time. And you're going to have a variety from one week to the next of which one you're eating. But let's say suddenly you had way more red jars than you did blue or green. Now it's a lot harder to make sure the red jars are spread out evenly through time. If we try and spread the blue jars out evenly, that means that the red jars are going to end up bunched up. And you're going to have red, whatever, jelly, two weeks in a row. And that's not what we want. So we want the red, the most common type of jar, the red jar, to be spaced as evenly as possible. So you can see here, by evenly spacing the red jars first, you don't have any color twice in a row, but blue is a little bit imperfect. It's not quite evenly spaced, but it's still better than it was in the previous version, where there were two reds right next to each other. So we need a solution that when both the blue and red jars sort of to be evenly spaced would need to be in the middle, it picks the more common jar, the red jar in this case, to be in that middle spot. So the first thing I thought of was let's just put all the most common jars evenly spaced on the shelf, and then put the next most common ones between them, and then the least common ones in between at the end. But the problem is if you actually do that, you end up with the gaps left in your shelf at the end for the least common ones, aren't at all evenly spaced. So you see here, the two green ones, if you try and evenly space both red and blue, end up together in the middle. And so this isn't as bad as two red ones being together, but it's still not ideal. They're still grouped up. So how do we avoid this? What if instead of putting all the jars on the shelf spaced out, we put them all next to each other and then move them apart and stick new ones in between? Well, if you start out with the most common jar, the red jars, you put them all on the shelf, and then you stick the blue ones in between them. It looks pretty good. But then when you stick the green ones in between, it nothing ever separated those two red ones that are together in the center. So you still end up with some of the most common ones bunched up, and that's really the last thing we want. So what happens if we do the same exact thing, but we start from the least common type of jar and move to the most common? We start out with two green ones, and then we stick the four blue ones in between them, and then finally we take the red ones and stick them in between those. Because we're doing the most common one last, we can put them exactly where we want them to be rather than having to worry about them getting moved around by other jars coming later. So this is the algorithm we want, and the code for it is even shorter than the code for the previous problem. As is often true, it was figuring out what code we wanted that was tricky and took me some time rather than actually writing it. So we're gonna walk through it again. Don't worry again if you don't get every little bit. You can always pull it down from GitHub and play with it later. So first of all, this is, I thought, quite interesting. These are the actual contents of Jonathan's pantry at the beginning of last winter. So you can see he's got three jars of tomatillo, cape or soup, five of spicy marinara sauce, 20 of salsa verde. So there really are very different numbers of different jars, different types of preserves. So it really is important that that salsa verde ends up spaced out as evenly as possible, or he's gonna be eating it almost every day. So, and this is gonna be stored in our program in a simple dictionary, a mapping of name to frequency or quantity of jars. So the first thing we do in our code is we sort those jars in increasing order because we wanna start with the least common type of jar and move up to the most common type. So we're just gonna sort them and then we're gonna create a variable list to represent our shelf. And of course it starts empty because we haven't put anything on the shelf yet. So then for each item that we wanna put into the pantry, we figure out how many gaps there are gonna be between those jars because what we're trying to figure out here is every X jars, I'm gonna insert one of the next most common type. So first when there's nothing on the shelf, every jar, I'm just gonna put them all in one after another, but then after that every one or two jars, I'm gonna insert the next most common one. So I want to keep track of what this ideal spacing between the new jars I'm putting on should be. So I calculate the gaps, I look at how many jars there are on the shelf and I divide that number of jars on the shelf by the number of groups I need them in in order to get a spacing. And note that since this is a division, this isn't necessarily going to be an integer, this could be fractional. So and then you go through all the jars you have in this new set that you're just putting on the shelf and you put them in after each group of jars. So after the first one goes in at position zero at the very beginning, the second one goes in after the first group of jars, the third one after the second group of jars, et cetera. So you multiply the number you're on by the spacing and then you round that to an integer because again spacing might be fractional and then we add the number of the jar it is that we're adding and that's because every time I stick a jar on the shelf, the index of all the jars to its right is gonna go up by one.  So yeah, so if you follow this algorithm, you actually end up with a really good solution and I'll hopefully we'll have time for me to show you at the end. But it works really good for a relatively small number of jars. If you're familiar with how fast or slow things are in Python, you might have noticed this insert statement. Insert takes time proportional to the length of the list you're inserting into. So since I'm inserting into the shelf once for every item that goes on the shelf, this is gonna go up in the time it takes by the square of the number of items you have. So it's not, and I do think that you can actually correct the supplementation to be linear time but I haven't taken the time to do it because we only had less than 100 jars. But it does mean that this might not scale up to giant problems where you have maybe 100,000 jars. So let's step back for a bit and think about this type of problem in general. We've got some criteria that we can measure that we're trying to optimize. Here we wanna space jars out evenly so we don't get tired of eating any one thing and we care more about the more common types of jar and because of that we were able to find a good approximation for figuring out how to make them as evenly spaced as possible. But our approximation is very specific. It only works for sorting jars. We can't use it to solve other types of problems where we wanna optimize some criteria but there are techniques that allow you to optimize many different types of problems and I'm gonna talk about one here. One we could use is called simulated annealing. Annealing is actually a physical process that involves heating up a metal to a certain temperature above its crystallization point and then cooling it back down and you do it in a specific way that when you're done the metal is softer and easier to work with so it's less likely to crack, it's less hard and basically its structure is just more uniform internally so there isn't a lot of stress caught in the metal. It's very easy to mold because it's all the same on the inside. So simulated annealing is just what it sounds like. We use a computer to simulate the process that the metal goes through as it cools. You calculate the total energy held in the structure of the metal and as it cools you generally tend to move to states that have less energy pent up in that structure. So let's watch this animation from Wikipedia for a second. You can see as the temperature goes down we tend to reach a point that has an optimal energy level. While the temperature is high we're jumping around to points that may or may not be optimal in any particular sense but we get closer and closer as the temperature drops. So think back to our problem. We want our jars to be spaced as uniformly as possible and that's exactly what annealing does. It makes the structure, it simulates the structure of a metal becoming more uniform. So if you treat the jars as having more energy the closer together they are then when you simulate annealing they'll tend to move farther apart until they're evenly spaced because that is their lowest energy state. So that's how you could apply simulated annealing to a one-dimensional problem like this. So another place that you might use simulated annealing is when you're designing a circuit board. You want the board to be as small as possible, compact as possible but you also want all the wires on the board to be as short as possible so you don't wanna have to run them all around the outside you wanna be able to run some of them through the middle and you have all these different pieces of different shapes that have to fit on the board. So what you can do is define a criteria that combines all of those things the total size of the board, how the pieces are located and the length of the traces and you then use simulated annealing to optimize that and you end up with a better board layout than you could come up with by hand. So just like with the knapsack problem Wikipedia is a good place to learn more about simulated annealing and I didn't really explain exactly how you actually use simulated annealing since obviously we didn't actually use it to solve this problem we used a different approximation technique but the specifics of it are explained pretty directly in pseudo code on the Wikipedia page. So hopefully these examples reminded you that programming can be used to solve everyday problems and you've learned a little bit about thinking through a problem and coming up with an algorithm to solve it. I don't know about you but in my day-to-day job as a programmer I'm not really coming up with algorithms I'm just implementing them so this is a good exercise because you really practice thinking algorithmically and also I hope that you learned a little bit about how fairly simple everyday problems can relate back to big important and classic computer science problems and algorithms. So we're gonna try and take a quick code break and I'm going to run these programs for you so that you can see that I'm not making them up and they really work. So let's start with the pantry problem. Hopefully you can all see that we have our list of jars that are in the pantry and our algorithm down here and then at the end all we do is print out the list we end up with. So if you look here we know salsa verde is most common, right? So we definitely want that to be at both ends because we know if it's not at the very ends of the list then it's not spaced apart as far as it could be which is what we want from the one that's most common. So you see salsa verde is there at the bottom and then again about six items up and if you look it's also at the very top so it looks like a good result and then if we jump over to our greedy approximation method here you can see that in addition to what I showed you before there is a little bit more code that just sets up the lengths of cuts we need and the lengths of boards we have notice again the boards are not in order. We take the shortest one first then the nine longest ones and then the 25 in between and we've set our curve, our cut width to be an eighth of an inch and then we get the result of the function and print it out and in this case you can see we found there are no remaining cuts to make every single one was made and for every single board we have a list of the cuts we need to make out of that board how much is used and so we can then just print this out take it over to our table saw and make all of our cuts. So that's about all I have. Happy to take questions now and like I said everything will be posted on GitHub after the talk if you want to learn a little more about it. Thank you very much.


Our economy exists to serve our society, but today, it drives climate change and biodiversity loss that threaten humanity's future. We need to refocus our economy to serve people and planet, rather than pursue endless growth. This means dramatically reducing demand for energy and resources, especially in transport and construction. Right now, around one third of total global emissions come from goods and services traded internationally. But so far, international trade lies outside the Paris Agreement. Governments are still asking the wrong questions. The tools, knowledge and technologies for a thriving zero carbon society are more available than ever. But large investments made in transport infrastructure now are locking in future emissions that increase energy demand. This makes it harder for renewable energy to displace fossil fuels. We need a climate emergency economy to address these environmental and social challenges. We can achieve this by investing in people, jobs, homes, health, education and quality of life, not new infrastructure and goods. This will ensure our transition to a well-being economy. How do we get there? International efforts must be strengthened. Climate targets should include shipping and aviation. And enforcement must be central to global climate agreements. Countries must take responsibility for the carbon emissions embodied in the goods they consume. Fairness is key. All countries must take part in the global effort, especially those who have already used more than their fair share of the total carbon budget. What can you do? First, inform yourself about the root causes of challenges like climate change. Learn more about the enablers and lockers of a carbon-free future. Secondly, follow the money. Keep an eye on the investments that determine how society changes. Third, pay attention to trade. Make your voice heard on matters that shape our global economies by joining protests and political movements. And lastly, endorse the Fossil Fuel Non-Proliferation Treaty, a global initiative to phase out fossil fuels and support a just transition. Together, we can build an economy that works for people and the planet.


He criticized dad for hoarding junk, then finds out what he really had. Once the auction was underway, his heart started racing. He knew that that the offer the jeweler had made days before was very tempting. But he thought that maybe he could get even more than that. But had he made the right decision. He thought it must have been worth more than the jeweler's hasty offer. And when he heard the stroke of the hammer hitting the table at the auction, he couldn't believe it. James Davis felt unbelievable grief when his father, George Davis, passed away. He wasn't keen on having to sort through his father's belongings. His father loved to hoard useless junk. He was called a hoarder by his family but he didn't mind. Now James had to clear out the attic in his house in New York. He knew this was going to be challenging but he didn't know about the surprises he would uncover. There was all sorts of junk in the attic. There were antiquated appliances and old bubbles. James felt it was a shame to just trash it all since his father was an avid collector and there might have been something worth a lot amongst the junk. After an entire weekend of sorting through the items in the attic, James stumbled upon a humble looking wooden box. It was hidden under old moth-eaten blankets until now. James opened the box in anticipation. Inside there very well could have been another piece of junk. But James had a feeling about this one. It had a certain allure to it, like it was calling out to him. Inside the box was a figurine. It looked exquisitely crafted and had an impact on James. The toy soldier's eyes were what were calling out to him. They sent a shiver down his spine. It looked very old and at first glance, one might think it's just another toy soldier. But James felt a connection with the figurine. He carefully picked it up and examined it. He couldn't find any kind of markings revealing its origins. Without them, he didn't have the faintest clue where it was from. It was heavy and fit nicely in his hand. He felt the need to turn the soldier over. The piercing look the eyes gave James made him feel like he had to go get the soldier checked. He needed an expert opinion, after all, what did he know? He had his suspicions that this was no mere toy in his hands. He thought the only person he could take this toy to was to a jeweler. With no markings, he knew nothing about it. It was at the jeweler that he would hear something that would change his life forever. The jeweler took out her special lens and fixated on the figure. James could only stare and suspense as he waited for their expert opinion he sought so highly. After a few minutes that felt like hours to James, the jeweler had looked at every aspect of the figurine. He couldn't help but notice the jeweler's facial expression change when she took a look at the eyes. Did she see it too? Were his suspicions going to be confirmed? I will give you $800,000 for it right here, right now, the jeweler stammered. James saw her serious expression and knew she wasn't joking. Her grip seemed tight on the toy soldier like she knew what its value was. As James thought about what to do, he could see the eyes of the soldier staring at him. What should he do? James was staggered by the amount of money he was just offered. Was she really willing to pay such an enormous sum for this toy? Maybe she had made a mistake and he should run away with the money. Then he felt like he should trust his gut. He wanted to pocket the cash but maybe its worth more. He didn't know what to do. The jeweler was met with horror when James politely refused her offer. He took the figurine from her and rushed back to his house where he could stash the soldier away in its wooden box. He decided the best place to store it was in his safe. Now he could feel his nerves, he needed to find out more about the soldier. It was time for a few phone calls. James was convinced this figurine would be worth more than what the jeweler offered if she was prepared to drop that kind of cash on the spot. But what kind of toy soldier would be covered in real, precious gemstones? To James, they were worth an entire lifetime of savings. But, instead of selling the figurine when he had a chance, James decided to hedge his bets. But would it pay off? After a few calls, James was even keener to find out the soldier's secrets. Based on a few telltale details, one of the jeweler's James had gotten into contact with was able to trace the figurine's origins. If the gold braid detailing on the figure's clothes wasn't obvious enough, the exquisitely enameled double-headed eagle motif that was embossed onto the trimming blew the case wide open. The jeweler explained that the value wasn't just based on the soldier's eyes, which were real sapphires, but also on the metals on his vest and the buckles on his boots. They were jewel-encrusted too. James was stunned. The stones that encrusted the piece were worth thousands in and of themselves, claimed the jeweler. But who had made such a piece, and why? James learned from experts that the figurine was modeled after Nikolai Nikolaevich Pustinikov, a loyal personal Cossack bodyguard to Empress Alexandra Fyodorovna. It had somehow made its way into his father's attic, all the way from Russia. In the end, he decided to hire a professional auctioneer to help get the word out to collectors. What antique enthusiast Colin Stair actually got for the piece left James dumbstruck. Please be enough to buy a house or something, James prays silently as he enters the auction house. Before he knows it, the bidding is on. The opening bid starts at $150,000, and James holds his breath. Suddenly, the bid climbs to $500,000 and a battle ensues. Wartski, a London-based jeweler and another collector bid fiercely against one another, neither backing down as the price of the old soldier skyrockets. Any auctioneer worth his salt knows how to sell a piece to the highest bidder. He'll talk about the history, components, and manpower behind their item in order to secure the highest price. However, Colin Stair, James auctioneer, barely had to say anything before the room was whipped into a frenzy. It was all over in 15 minutes. Within just 15 minutes, the 100-year-old figurine sold for a whopping $6 million. James had been sweating over his decision to turn down the original $800,000 he had been offered, but now he was over the moon. The figurine was sold to London-based jeweler Wartski, who was able to shed some light on the piece's origin. The purchase of the figure is a continuation of our long-running tradition of acquiring Imperial Russian works of art, said a Wartski spokesperson. The figurine was commissioned as a gift for the Empress by Tsar Nicholas II, the last Tsar of Imperial Russia. The company he paid to make it raised a few eyebrows from would-be bidders. Tsar Nicholas II had sought out famed jeweled eggmaker fabric to craft the little soldier. It was later bought by US businessman Armand Hammer for $2,250, now equal to about $35,000, before finding its way into James' father's attic. It hadn't been seen again, until now. It has, little sapphires in the eyes, little gold trim and gold braid and all these elaborately in Lady Namell double-headed Imperial Eagles, auctioneer Colin Stair told WNYT. There are only 50 in existence. Old Rivals WNYT When asked about the reasoning behind purchasing such an extraordinarily expensive piece, the Wartski spokesman told the register star, Wartski was Armand Hammer's prime rivals in the 1920s and 1930s in buying the confiscated Imperial treasures from the Soviet government. That's a long time to wait to get one over on your rival.


Welcome to CardStunt as a Service, or CAS. CAS enables a massive impact crowd to create instant collective visualization using their mobile devices and cloud-based services. Here, we have a group of Mobus' fans who collectively want to show a message. When the fans receive a starting signal from the CAS coordinator, they raise up their phones for a short while. As soon as the coordinator chooses an image, the cloud assigns each of them a pixel from the image based on their position. Now, they are ready to convey their message with collective visualization. Let's take a look at how CAS works. As soon as the group is in place, the mobile devices observe neighboring devices. Each device shows its own identifier by displaying a color transition sequence. At the same time, each device identifies other devices within the camera's field of view and calculates the horizontal angular distances to each of them. All the observations are sent to the cloud and the cloud shapes the possible region of each device with observations from other devices. Then the cloud optimizes all the device's locations in or around their possible regions so that the reconstructed locations concur with the given observation results. Once the localization is completed, the stunt image is divided into tiles and dispatched to devices at the right locations. Thank you for watching our demo. Please refer to our paper for more details.


you're choosing the niche for you to build your brand in and make your impact in, my advice would be to look at the experience that you already have and look at the things out of all that experience that you absolutely love doing, think about the person or the people that you loved doing it with and consider what you can be the very best demonstration and the embodiment of success in that particular area and that's what I would be using to focus on my niche because that way you can live, breathe, eat, sleep, walk and talk it with your eyes blindfolded and your hands tied behind your back, you haven't got to learn anything new, you haven't got to master anything new, if you've created success and results in an area then you've already got credibility in it, you can use what you've created to build your success to teach others and that will build a phenomenal brand


What do you see as the biggest risks to Bitcoin? 51% attacks, pandemics, catastrophic hash losses, market manipulation by whales, crackdown by government, monetary catastrophes, electromagnetic pulses, hurricanes, tornadoes, sharknadoes, Godzilla, and alien interventions. No, not really. They didn't add all of those things, but I thought it would be fun to add them. Listen, all the time I get similar questions, especially for people who are new to Bitcoin, and keep reading all of these catastrophic media articles that say that Bitcoin will die the next time a giraffe farts somewhere in Africa in a catastrophic way that dismantles the Bitcoin fragile ecosystem. Turns out, though, Bitcoin isn't that fragile. It's quite robust. I remember quite clearly when empty gocks crashed and collapsed catastrophically, and that was the first and also the last time that I said, oh, this might be it. We might have lost this forever and have to rebuild it from scratch. Turns out, Bitcoin survived that, and I developed this kind of calm and confidence that I felt that it was unlikely we're going to see catastrophic attacks on Bitcoin or catastrophic failures of Bitcoin. So what do I worry about? Well, I can tell you I don't worry about 51% attacks. We've seen, repeatedly, that such attacks are both very expensive to pull off, require enormous coordination, deliver very little in benefits, and can be relatively easily thwarted. So for such an enormous cost, such little reward and such enormous risk, we haven't seen 51% attacks, and I don't think we will see 51% attacks. I could be wrong, of course, but I think Bitcoin would survive those because there's not much you can do when you do a 51% attack. You can't steal other people's money. You can't change the consensus rules. You can't make invalid transactions magically become valid. Consensus in Bitcoin is spread across multiple constituencies and is quite decentralized. It's not just miners who validate transactions. It's also nodes, and it's also economically important nodes like exchanges and merchants. An electric failure would certainly damage Bitcoin, but it would damage the existing banking and financial system much, much more severely and cripple the ability for international finance to continue. In fact, I would predict that if we did have a massive electric failure or natural disaster that damaged infrastructure, such as the internet or the electric grid, Bitcoin would be one of the first things to come back. And the reason for that is because not only is Bitcoin a self-funding system, but also because of the decentralization of users, node operators and miners who would have many, many incentives to rebuild local infrastructure in a very decentralized way. Remember, Bitcoin doesn't need the internet in order to exchange transactions and blocks. It simply needs a communication medium. We've already seen commercial satellite channels being used for that, which of course have redundant power and great resilience against things that might hit the earth. These types of systems would still be available. And with a simple satellite dish that you can get for TV, you can get transactions and blocks from a satellite. You can also rebuild this infrastructure with other communication media such as shortwave radio, FM radio, packet radio or telephone lines. Who knows? So, I think of all of the technologies that might be affected by such infrastructure disruption, Bitcoin would likely be the first to bounce back. Finally, what is the real big threat I worry about? I am worried about concerted attacks against mining equipment, for example, through a virus or a worm. But again, I think these are survivable and would result in quick fixes that would be fixed. I am worried about political attacks, especially sneaky political attacks like changing the tax status of cryptocurrencies in order to drive it underground. And I do think that such attacks could alienate a big chunk of the middle class and speculative investors who will not take the risk to oppose government in order to use Bitcoin. But for better or worse, more than half of the human population lives under totalitarian, dictatorial or authoritarian regimes. And in those places, well, opposing the government is really a matter of life or death. And so being able to use Bitcoin by breaking a law is probably the least law that people will break. And, you know, in places like that, the incentives are totally different. So in summary, over my 10 years almost of being involved with Bitcoin, well, eight and a half years, I have gradually developed more and more resilience to the fear that this is about to go away. And more and more confidence in the robustness, security and reliability resilience. Now, I'm not talking about the price. I'm talking about the system. That's a big difference. The price can be attacked in many different ways, and those attacks can drive the price down quite dramatically, and perhaps even for extended periods of time, but they will not change either the monetary fundamentals or the technical operation of the network.


Gold. Gold contract down $3.70, trading at $17.96 an ounce. We had silver down 20 cents, $23.12 an ounce, late sweet crude up 136, $75.65 a barrel, notes and bonds. The end note, down 22 ticks, trading 1403, the 30 year, down a point and a half at $129.19 and $Kingdollar. $Kingdollar up 13 ticks, 104, 714, Euro 106, Yen 136.99, the British pound, 121 to 1 US dollar. We get over and take a look at the spy. The spy closed the gap, in fact I think it's closed right at the gap. So the gap is, not closed below, 381, 14 was the gap and we went to 378, we closed that 380. And the X100, we take a look at the 3Qs, that didn't make the gap, it has a few more down there to make the gap, a few more pennies. The gap is 268.56, oh no we made it, 268.49, went to the gap. This is not going to stop. My take is not going to stop. The reason being, it's about to send the X, I mean you can see this thing. The highs of the lows that I've been talking about folks, that's where we are right now. And it's 277, the highs of the lows of October, this is telling me man we're going right for the bottom. Now, what we do have is this, if you remember in the S&P we get a large ABC structure down, we didn't have the volume inside of the Qs on the monthly basis for an ABC structure on the way down. Let's see what happened here, let me show you this. So what had happened is that you needed volume, right here, we needed volume more than 1.36 billion and we got, oh no, we did get it. Look at this, 1 second, 1.36, 1.37, we did get it. Oh my God, yeah, we got it, yeah, I have to do this quick, this is insane. Okay, 3, what do we got here, 1 second, come on, come on, I'm going to do it, I'm going to get it done, 3.71 minus, I'm ballpark this, but you've got to get this, 2.69, minus, minus, 3.34, 2.32, 2.32 folks, that's it. Have a great night folks, have a safe night, 2.32, that's where this spy is going, have a great one, have a safe one, thanks.