Hi everyone, Shawn with JaspysCaseBreaks.com, here doing a 2020 Top Stirling Baseball two box break. Number three, we'll be doing number two following this. It sold out before number two did, so this is going to be number three. We have six boxes left from the original case of eight that we're going to randomize. You can see here we've got boxes paired up one, paired up three, and paired up four. We're going to randomize which two boxes we're going to do, but in the meantime, we're going to randomize the hits. So thanks to everybody involved, so we're going to roll a dice here to figure out which boxes we're going to open up. For pairing one, it's going to be one, two. For pairing three, it's going to be three, four. And for pairing four, it's going to be rolled five or six. So good luck, everyone. It's right under the camera, and that is a three. So it looks like we're going boxes number three in the middle. So Stirling two will be after this, and we'll be picking from those remaining four boxes. Stirling four, I believe, is in the store right now, guys. I do not believe it is sold out. I think there is a filler for it. So we're doing three. One spot straight up, and then there you go. So we've got auto relic cards numbered to 25 or less, or unique one-of-one relics in here. Two cards per box. Oh, it's random hit. Yeah. Yep. So I'm just going to randomize the names that everybody gives. Show them the hits first, and then tag them in. Awesome looking stuff. Is there a cover here? There it is. Look at the packaging on this. So this one, apparently, is the Fielding Awards winner. And then this one here is the 500 Home Run Club. The chat's talking about the best menu items at Taco Bell. Did that already get canceled? Well, it's discontinued. It's the Choco Taco. It was incredible. I only get regular, hard-shelled tacos. The box is a tight. No? Oh, that's my big finger, though. Okay, I'm wrapping this up on the top. Yeah, maybe you just have to be like the Hulk in there. Top's coming off. Whoa. What happens? Taspi's after her. And what happened to the way that thing got so in the kitchen of John Peter today? Oh, fancy. Wow. There's two boxes, too, huh? Some serious stuff here, guys. Looks like it's going this way. It is. Ooh. Oh. Yellage? That's Christian Yellage. Wow. Sterling Season's 2018 Christian Yellage Dual Relic and Auto, numbered 13 out of 25. Wow. Sharp. Nice on-card auto. That looks incredible. Wow. Can you look at the back of it? You want to risk that? Yeah. Let's do it. Just to see. Oh, nice. It's got some good, good copy on the back. Nice. We should top load these and send them in that way and not in this, right? Might rattle around. Yeah. You're going to protect it. So we'll top load these things for you guys. Protect them for the conditions. Very nice hit there. 180's, maybe? Maybe probably 130, actually. Try this. That's a 180. Or we can just blue-tape it, if that's what it is. It's loose. Let's blue-tape that. Next up, 500 Home Run Club. I heard, who'd we say? Ken Griffey? I heard people say Poppy, A-Rod. Yeah. I guess Babe Ruth is also in that, right? It does say unique one-of-one relics, autograph relic cards numbered to 25 or less, or unique one-of-one relics. James is saying Barry, David's saying Hank Aaron. Let's see. Do they have it the right way? Maybe? Let's find out. Oh, somebody called it. Next for Rodriguez, dual relic auto with the little bit of the pinstripe on the left-hand side there, numbered 15 of 15. Future owner of the Met, maybe? Or part owner of the Met? I still think what's his name buys it out, but it looks really nice. The cool part is, too, guys, this is also sunken into the card, so you have different layers on there. Looks really nice. Box one. Brandon likes that? Rex called it. He did. Scroll up in the chat. Rex is a... He knows. He can see through the boxes, guys. Rex, what are your picks for this box? So what are these ones? Silver Slugger Award Winners and 1970s MLB All-Stars. Okay, so let's go... Hmm. Let's go Silver Slugger's first. Hold the 1970s All-Stars. Silver Slugger, Wong Gonzales, Rex says. All-Tuvei, Adam Sang, Ortiz, Miggy from Vanilla, looks like another vertical, or no, we'll find out. Benito Santiago, All-Stars, Rod Caru, Rex, okay, getting ahead of us, and it's... I guess it's All-Tuvei, but teammate, George Springer, that's numbered five of five. Quad Relics there, one, two, three, four, five colors, really nice looking card. Joe will receive, will reserve his opinion. Card is nice. Austin Barnes-Granny right here, two and O, the count, bottom of the seven, basis loaded, Austin Barnes-Granny. I'm sorry, I don't see how he Kendrick at the plate in Dodger Stadium. Awesome looking card. James is saying, ground into a double play, even with two outs. The old grounder is short. And now 1970s MLB All-Stars, Joe, any guesses? 1970s MLB All-Stars? Yep, so Adams is saying, Adam's saying Gaylord, Rex earlier said Rod, Rod Caru. Juan Marichal. Nolan Ryan for Steve. That would have been a double play ball. Whoever said that got it right. James, James, all right, there you go. Maybe Burt Blilevin. So Paul's also going Rod Caru, Bryce is going Will Clark. Ooh, Reggie Jackson, what about Reggie Jackson? Paul, you're just going to name all 1970s All-Stars? You get one guess. Reggie Jackson. Yeah, there's one guess, can't... I'm going to say it goes this way. You might be upside down. I would have taken out Dubon's legs. Upside down, nobody guessed it. Part of the dual dynamics auto we just had, Mike Schmidt. Dual bat relic for the Phillies. Nine of 25. Sterling season's 1980. Awesome looking card. Great, sorry, I was praying to end the game, who was it? Mike Schmidt. Ooh, Schmidtie, nice. Good ol' Schmidt. Dual bat relic. What a whole run's with that bat. Highlighting is 1980 season. Interesting that it's 1970s All-Star auto, and it's a 1980 season. I'm sure it was an All-Star in 1979. So those are the four hits, guys. We're going to pause the recording, put them in a randomizer with the four participants in this break, and match them all up. Lunti's going to go yard right here. Welcome back, everyone. We've got the list of customers from Josh down to Christian. Christian with last spot mojo. And the list of hits in order of how they were pulled. Christian Yellich down to Mike Schmidt. We're going to do a randomizer, roll dice, and we're doing it 10 times, four and a six. Good luck, everyone. One, two, three, four, five, six, seven, eight, nine, and 10th and final time from Christian down to Josh Proust. Add that into the spreadsheet here. Now, 10 times on the hits. Good luck, everyone. One, two, three, four, five, six, seven, eight, nine, 10th and final time. Good luck. From George down to Christian Yellich. I don't think it moved at all in that last randomizer. So Christian Fitch with the George Springer, five of five. Paul Chung with the Mike Schmidt, nine out of 25. Michael Tanzillo with the Alex Rodriguez, 13 out of 15. Sorry, 15 out of 15. And Josh Proust with the Christian Yellich, 13 out of 25. Congrats, everyone. Christian Yellich going to Josh Proust. Alex Rodriguez going to Michael Tanzillo, George Springer. That's going to Christian Fitch and Mike Schmidt going to Paul Chung. Congrats, everyone. Sean with jaspyscasebreaks.com. That was Bowman. Sorry, Tops Sterling 2020. Random hit number three. jaspyscasebreaks.com, take a look.


Now I've made over $1,900 selling my photos on Adobe Stock and in this video I'm going to show how I've made money over time as well as my best selling photos on Adobe Stock. Thanks for watching. My name is James Wheeler and I've been uploading my photos to Adobe Stock since 2014. So my Adobe Stock portfolio has over 200 photos in it and I've had over 2,500 downloads. So over here you can see my sales by month from 2015 till now. As you can see it's fairly flat with a few spiky spots where I've made additional sales. So typically I can count on Adobe Stock to give me about 20 bucks a month but this past February I did have one month that was over $60. However you look at my stats quarterly. Adobe Stock does seem to be rising a little bit for me. Q1 this year was by far my best quarter on Adobe Stock and I've still had a couple more weeks in Q2 of this year so although it probably won't be as good as Q1 it's going to be better than most of the quarters I had from previous years. So now that you've seen my monthly and quarterly stats let's go take a look at some of my best photos on Adobe Stock. This photo here is by far my most popular stock photography photo so it's no surprise that it's also the most popular on Adobe Stock. With over 700 downloads a full 30% of my Adobe Stock downloads come from this one photo. However this second photo is a bit of a surprise. This photo has not done well in any other stock sites and many of the other stock sites actually rejected it. So it's a bit of a surprise that it's my second most popular photo on Adobe Stock. Now if you're new to stock you'll find that this happens quite a lot. You'll have one photo that will do really well on a particular stock site but not well on others. I kind of think there is a bit of a luck of the draw when it comes to stock photography. I think probably what happened was when I first uploaded this photo a couple of people bought it right away which ended up raising the photo in the search rankings and once it's been raised in the search rankings then it just kind of snowballs and you get more photos. So it's not always totally about the type of photo it is but sometimes a bit of luck of the draw. However one thing that I have noticed with Adobe Stock is that panoramas typically do a bit better on Adobe Stock than they do on the other stock sites. So that's why I think popular photos vary so much between different stock sites. If you have a different theory on why this happens let me know in the comments below. I'd love to hear it. Now these next two photos aren't in the top five of any of my other stock sites but I typically do see them in the top 25 of the stock sites. So it's not a huge surprise to see them here. This next photo is like one of my top sellers in October but doesn't get a lot of sales the rest of the year. It's pretty easy to see why. So next we have another panorama. Now this one actually does get some sales on Shutterstock unlike the other panorama that I showed you. So this next one is an old photo that I did back in 2012. I like the composition of this photo but I do not like the way that I processed it. Back then I was experimenting with HDR and I was posting those photos to the stock sites but this is something you'll find. I think rarely I find my favorite or the photos that I think are the best sell well on stock. So as I'm experimenting or as I'm learning with photography I always just upload the photos and see what happens and you get surprises like this one where 60 people felt that this was valuable enough for them to download even though I don't think it's a very well processed photo. So those are the top seven but as I scroll down you can see that the rest of them are a variety of cityscape and landscape photos which is what most of my portfolio contains. Now every month I create a stock photography earnings report where I go through my stock sales on all the sites. So make sure you subscribe and hit the notifications button because it's a great resource so you know which of the best stock sites selling right now. Also if you'd like to see my best selling photos on Shutterstock I've got a video on that and I'll put a link up here. Best of luck selling your photos online.


Uh, okay, now, yeah, I forgot to push the button again. Yeah, yeah, I just wanted to check. Yeah. Hello, everybody. Hello. Oh, well, what a day. We've had quite the course, haven't we? So yeah, we had a nice long discussion yesterday after we were done about where we were, like, where we were, is this too hard, like, what's, like, what's sort of the role of this course in the whole learning process? Is anyone expected to know this after the course, or is it too, like, what is the, what is the main, main learning outcome? Right. Yeah. Yeah. That, that should be expected or could be expected. Yeah. Maybe we would. Go ahead. Yeah. Yeah. We were talking quite a bit about, like, uh, like this, uh, idea of, like, N plus one, that, like, you don't necessarily understand everything when you first encounter a subject but then you encounter it later on. Like that has happened, at least for me, in multiple occasions. So maybe, maybe hopefully we can be the end to your N plus one. I propose we have a bigger discussion of the learning outcomes after the, after the hour starts. So because I think this is important. Yeah. For now, I can say that I'm waiting for having some ice cream. Like there's an ice cream truck that comes every now and then and it's like, it's the best thing on every Friday. If it comes, like, I hope it comes this Friday because I'm ready for some ice cream. Yeah. Like, is, do you mean in, like, where you live? In Viki. In Viki. Okay. Yeah. Yeah. Right, right to the doorstep. It comes there and children scream and go, that's an ice cream. Do they still have the same, say, the, uh, no, no, they don't have the, the, the traditional jingle. Is there anything now? There is some jingle, but I can't remember. But our cat goes completely berserk when he hears it. Yeah. Like, what, what is this, who's coming, who's, who's attacking now? Yeah. And maybe there are some, like, frequencies that are like, like not bad for us, but like really bad for cats or dogs. I can't imagine. Yeah. But, uh, with our, uh, with the powers vested in us, we can say that, like, we can grant you the permission of having an ice cream after this course because we, I'm definitely having one. Yeah. Okay. So we're getting, getting, uh, some happy and some overwhelmed. Both are very understandable feelings. Yeah. So towards, towards day one and two. Yeah. Oh, was I supposed to tell you how I'm using the cluster to process videos? Yeah. So I think this might be a good point before we start the actual. Yeah. So let's see. So we record four hours of video from this and it needs processing. And this is basically a lesson in all of the different tools we're teaching you and we, that you could be using for your stuff. So first, the raw videos are recorded in a git repository using git annex because they're large files. I have some rules set up that will automatically synchronize this between my computer where I'm recording and the cluster and the rules are set up with git annex so that way it only sends the audio files to the cluster. So on the cluster, I use open AIs whisper tool to make transcripts, make subtitles for them. And to manage this, I have a make file. So to make files, some basic automation of things. So on my computer, I can do make AAC, which extracts out the audio from the video. And then I add that to git annex. Git annex knows to only synchronize the audio files to the cluster. On the cluster, I can run make SRT to make all the subtitles. And because I'm using make, I can tell it, do it in parallel. Like I'll say use for processors at a time. It submits a GPU job, which goes to a partition and does the processing, saves them again, I can add it to git and re-sync them back to my own computer. For all the segments and stuff, we also use git for this to synchronize it around. So we have a plain text file in YAML format, which has the workshop description and then all the cut points in the video and then a tool that I can run. So for I'm running it on my own computers to do the encoding, I guess I could switch to the cluster someday. But anyway, so I run that and it does the encoding. And yeah, it's all somewhat automatic and all tracked with version control so it can sync between the different computers fairly well. Let's see, are there any other points there? So it uses the cluster, it uses git, it uses version control. No, that's git. It uses plain text files being edited with a console editor. They use it as make files for automation. But these kind of things don't just happen overnight. So it slowly gets developed over many different courses we've given each time. I'm making it a little bit better and a little bit more automatic. So yeah, this is not the kind of thing that someone can just make from scratch. It's a it's zero zero. Yeah, OK. So you want to start?  OK, see you. Yeah. So let's check the icebreaker questions. So the best ice cream flavor. Does this match what you think? Yeah, yeah, good. Yeah, I'm I'm torn between chocolate and vanilla myself. Yeah, the old classics. Yeah, so but the next questions are the real important ones. So day one and two, they were two. So yeah, this is sort of what we'd expect. So happy overwhelmed. I don't know if the same people are voting for both of them, but we fully realized that this is an insane amount of information that we're talking about. And it's just the tip of the iceberg, really. So we don't really think that with this one course, we don't expect you to know everything by yourself. Fact, who was it? So someone was talking yesterday after the course mentioned was it about like watching the YouTube videos and something all making sense? But you had to have experience with it before it made sense. Yeah, yeah, like, like, basically, if you if you encounter some topic and you you have a like teacher or someone who teaches it well. And well, in this case, they were interviewing a teacher who was known for teaching stuff well. And he said like a bit of self deprecation in his voice that like he thought that like somebody else has probably taught the topics beforehand, and he was just the person who basically like locked the pieces in place. So you don't like they might be another source of information that we finally lock the info like the stuff into place. Or maybe we can in some cases lock the pieces into place that you have learned or heard about previously. But the idea is that like maybe. Throughout this course, some stuff will be overwhelming. It might be too much. I can understand it completely. But maybe the next time you encounter the topic and the next time you see it, you basically then get this kind of like a eureka moment and everything locks into place. But it's very hard to tell the way and that will happen and what will happen. And it's it's yeah, it's it's hard. Like for us, it has taken years to familiar familiar guys ourselves with the tools and the topics and everything. But once you become accustomed to them, then you forget or start to forget what it's like beforehand. And that's the problem, basically, like how can we translate something that we learned? And this this is an ongoing discussion in the HPC world anyways, like who does every new generation have to go through the same pains in order to learn the things. So like, like does every new generation of scientists have to learn the same like for trans and seas and and like all of these old technologies in order to do new stuff? Do they have to go through the same crucible? And I say I think no. But but sometimes there are things that are very hard. And because like stuff is built upon other things and and it's very hard to get to the end point without going through all of the intermediate steps. So and and maybe we don't know how to get to the end point without going through the intermediate steps. Yeah. And yeah. I mean, I'll definitely say there's some sort of big use of usability problem with many clusters. But also. I think there is some intrinsic difficulty here. So this might be the first time that many people are going from running code themselves to programming. Programming something else to run all the codes yourself. And no matter how easy we try to make that, it's still a whole level of abstraction to be learned. And three days is just too fast to do that. So here's my proposed learning path or what I think that y'all should keep in mind when you're learning these things. So if this is feeling overwhelming for you, then get what you can now. Don't worry about knowing everything. But you get sort of the big picture of what's even possible. And you'll know in the future in weeks or months or years. OK, I need to do this particular thing. You can come back and check the material, maybe at that point you're ready and it makes sense and you can learn yourself. But if not, which is completely OK, like for example, if next week it's difficult, come to our help sessions, come to our garage if you're at Alto and basically say, hey, I was at the course yesterday and or last week and I need to do this parallel stuff. Here's my code. Can you show me how to get started? And I'll be like, yeah, OK, sure. So we'll point to you like we can even write the basic example script for you to put it all in place. And once you have that model, then you can be modifying stuff. And over time, you'll get more and more comfortable until who knows, maybe next year you'd come to this course again to see what you're missing. And then it will all start clicking and making sense. Yeah, and I'll also mention that like what we were talking yesterday is that like throughout this thing, like like nowadays, probably half of you have a chat GPD or something open on the other screen or somewhere where you can ask ask you to write your scripts for you or do some stuff for you. And in these cases, it's important to like remember that in order to get like good answers to from like from Google search, from get good answers from chat GPD or something, it's good idea to learn how learn the concepts, like what sort of questions are you going to be asking? And then like the road stuff, like what what parameters you need to use and that sort of things you can like just like some other thing handled like I always just go back to like, let's say slow documentation to look what flags were there, what were the exact flags? Like what sort of things like if I'm using some technology I always go to their web page and then I'll Google Google stuff in their documentation, what were the actual flags? Like NumPy, like was it an underscore or was it like a was it not like these sort of things? Because that's road stuff and that's memorization and that doesn't help at all. But the important stuff is learning about like the big picture. And then you can if you know the big picture, you can ask the right questions and find the right flags. And that's what we are focusing on today. And hopefully you'll get on to it. Yeah, so are we do you think we are ready for starting the parallel or? Yeah, I guess so. Oh, what's that? Yeah, maybe I'll mention if you want to share my screen. Yeah, Seymour made this nice demonstration picture here. Yeah, sorry. So if you know the movie Shining, like I thought about this today, so there will be some words that are coming your way. So because like this, like thousands of different technologies, probably that implement like this parallel stuff, this open MP, open MPI, CUDA, AMBA, like there's all kinds of like different fancy words and fancy technologies that implement the parallel stuff we're going to be talking about, like multiprocessing, parallel pools, all kinds of stuff. But this is not important. Or this is like something that we try to avoid as much as possible so that you don't get overwhelmed by the word. So don't get caught up in the like techno technological buzzwords too much because those chains like technologies change. But the underlying like paradigms, they don't change. They have been the same for like, I don't know, like from the 60s or something like stuff like that has been around forever. But what changes are the technologies and the technologies have like common things joining them. So we'll try to avoid like throwing too many of these words together. But it's a good idea to know what like if you see some of these technologies in the future, you'll then know that, OK, maybe this is related to this paradigm. OK, OK, so should I do my initial screen sharing? What do we do in the discussion? Or do you share that for the first session? You can share. OK. And also, I mentioned that if throughout the course you have questions regarding your technologies, like you're like we were asking about ice cream flavors earlier. So if you have your own favorite ice cream ice cream flavor that you plan on using, ask about it in the chat. Because at the end of the day, we hope that to have like a Q&A session where we can answer especially those questions like so that we can answer. Now, if you have some like questions of is this possible? Is it possible to use this thing for my problem and ask those in the in the chat and or in the notes and we'll try to answer it at the end. Yeah.


Excellent. Today we're going to talk about how to control robots with your brain. Specifically, my brain right now, but we'll get to that. Full disclosure, I work for a company called Pinocchio. I usually work out of San Francisco, and I'm in England for a couple of months visiting. I've done a talk a couple of years ago here about cyborgs, so you might possibly remember that. This is sort of a more in-depth one specific instance of how to control, obviously, cyborg stuff with your brain. Alright, so first off, brainwave control, also known as EEG, Electroencephalograms, which is a device that reads the electrical currents produced in different frequencies by your brain when you're conscious. So you are constantly producing brainwaves across a spectrum of frequencies in different intensities depending on your mental state. So here's a chart showing the general correspondences. What we're going to be working with is alpha and beta waves, so those in the 8 hertz to 30 hertz spectrum. Above 30 hertz to about 40 is gamma waves, which no one really uses for anything that I'm aware of. And then if you wanted to do dreaming stuff, then you would probably be working with delta and theta. So choosing a brainwave reader is the first step you want to go through. So there are a few major companies that produce commercial ones. There's NeuroSky and Immotive are the main two, but there's also some like Muse or the OCC Nia, which are tougher to hack and may be more system specific. So the Muse is a consumer device that I believe just feeds to your smartphone and the data isn't really accessible.  It's somewhere between, it's closed, but there's lots of information available on how to hack it and it's fairly simple. So we'll start with the NeuroSky systems. They have three main ones that you will encounter. The MindWave has built in Bluetooth compatibility with a phone or a computer. And so you can use that if you want to simply write your own software to interact with it. People use that with processing too. The MindFlex is one that's marketed as a game. Also is the Jedi Mind trainer you might have heard of, which you control a little levitating ball. This is one that's really popular with hackers because it's easy to get into. There's really obvious screws and things. It's got its own power supply. And also there are various tutorials around. Also you can get it for much cheaper than a MindWave. So for example, the MindFlex comes... There's a kit called the dual set where you have two players facing off against each other. And that can actually be cheaper than buying a single headset. And it's also very hackable. And then finally, NecoMimi is produced by a Japanese company. Also based on the same chip as the NeroSky ones. It's basically a licensed version that includes two servos that control cat ears. And they have their own algorithm filtering on there to make it produce cute behaviors. So it's not as... It's not as sort of pure, I guess. But it does make it a lot easier if you want to build your own hardware that's controlled by brainwaves. And you don't necessarily want to dig into the internals of the device. That same company also produced a little flopping dog tail thing that you might also have seen. Then we have Emotive. And they're sort of the more sexy snazzy company. They have a lot more sensors. So the NeroSky comes with a forehead sensor and an ear clip. And the forehead sensor picks up your more direct EEG waves. And the ear sensor is basically a filtering mechanism. It provides a reference point and ground.  So the older Emotive version is the epoch, which has, I believe, 16 sensors. I might be wrong on that. You can pick up directional movements as well as straight brainwave frequencies. So you can do things like think forward and back and left and right. And even disappear, which apparently no one's been able or no one's used yet for research because they're not sure how to tell subjects, imagine this thing disappearing. But they have managed to make people control physical things in real space. And then the inside is a newer one that they've built.  And then the inside is this sort of sea creature thing with five tentacly prongs that wrap around. But it's not commercially available yet. Supposedly it is much improved. Oh, and they have SDKs for those. So they're encouraging you to hack them, but not physically, just software. And then there's a couple of open source systems. OpenEUG is an older one that you can find information on the internet. It's basically if you want to build your own system from the ground up, which can be awesome because it's open source, but also a lot more difficult because you have to gather the components and it can be a lot more expensive because you're buying everything from scratch. And then OpenVCI is one that recently did a crowdfunding campaign. I don't think they're available yet, but it's also supposed to be for the open source community. So based on what you want to do, you probably want to select a system based on that. I've mostly done NeroSky because it's easier to hack and it's cheaper than the emotive systems. So the first step is, of course, hacking the EEG device itself in order to get it to work with whatever robot you're talking to. I took off of this existing tutorial by the Frontier Nerds team. It shows you how to open up the device. Well, I'll show you this in a video in a minute, but there's connects the NeroSky to an Arduino, which you can then hook into your computer with a USB cable, pull the information off and use their processing graph to see the brainwaves in real time or control stuff. And then I've got a few tutorials. We're going to look at the two videos I have on YouTube. And then also there's a breakdown of the NecoMimi, the cat ear things, which I used to create some brainwave-controlled animatronic wings and horns for a fashion show. And so you can see how that worked online. I should have more pictures on here. Here we go. We're going to watch these with no sound, but I'll just tell you sort of what's going on. Let's see. So this is the Frontier Nerds tutorial that I was talking about. Let's go full screen. And this is the Pinocchio module that I usually use. So as I was mentioning, the Frontier Nerds tutorial teaches you how to hook it up to an Arduino. And this is basically another microcontroller that's Arduino compatible, but it also includes baked-in mesh networking so all of the boards can talk to each other. You usually have like three or four. And so with this hack you basically attach the Pinocchio to your brainwave reader and then have another one sitting in the robot or in the control system. And they talk to each other instead of having to implement your own, either through your computer like a wire connection or implementing your own Bluetooth. So here's the... Let's go back. Sorry. I'll show you the Mindflex controller. And what we've got here is the power switch on top. There's the forehead sensor there and the ear clip, which I've hacked into this set basically moving the chip into this pair of headphones and the sensor here and the ear clip as you can see. The Pinocchio boards and then some tools that you'll need to complete the hack. So you start by opening up the case and I'll just skip through this really quickly. But here you have the internals of the device. You've got the power systems coming through the headband and the signal down here with the blue and yellow arrows. And then so the blue arrow points to the ground pin on the controller itself and the green arrow is the transmit pin, which is what you're going to hack. So instead of allowing it to transmit via Bluetooth, which it does already, you can keep using this as a toy afterwards, but you're basically slurping that signal out of the board and piping it to your own controller. And that basically says exactly what we just did. And here's the connection of the transmit pin. And there's the ground pin.  You're on the Pinocchio board. You're going to hook it up to... Oh, pardon. I'm not used to using YouTube videos. Here we go. So the ground pin from the board itself goes into the Pinocchio's ground pin. Same with Arduino. It goes into the ground pin there. And then your data cable goes into RX1. So you're receiving the data that's being trended from the reader. And this is me controlling a little helicopter with thoughts.   And then on the programming side, you can program it straight through the Arduino IDE.  FrontierNerds has their own library that's called the Brandt Library. And you throw it on the Pinocchio. And then, yeah, pardon. And then you get a data feed that looks like this. All right. So what you're getting out of the reader itself with the Mindflex is you have... I'll just show you up here. It's easier. They have range. Excellent. So the first... You basically got 11 positions out of this. Eight types of figures. The first one is signal. It goes from 200 to 0. 200 is zero signal. And zero is best signal, weirdly. And then you have attention to meditation, which is two filtered EEG frequencies that they've run through normalizers so that attention is basically your beta values, normalized from zero to 100, with 100 being the best, because that makes sense. And then meditation is your alpha value. And perhaps some other ones that they've thrown in there, but they don't open their algorithms. And then the next eight are the various frequencies. So going from delta to up to even high gamma. And they don't correspond to any specific scale, but you can use them to compare to each other over time, or to themselves over time, or whatever you want. I usually don't use those though because it's easier to go from one to 100. Zero to 100. I think that's about all we've got on this video. Oh yeah. And if you want to check it out, I also include the commands that you put on the Pinocchio device itself. So there is pulling the attention value, that second value that you saw in the previous screen, and sending it out to the other scouts. And then running that once per second. So the Neurosky, here's the point. With either the mind wave or the mind flex, it's pulling the data once per second. So if you want something that's more responsive, you might want to go with either a lower level hack, which you can pull the raw data by performing some extra little tweaks on the hardware side, or go with a different controller. But this provides some sort of smoothing from data point to data point. And then here's the response that you put on the other board, which is basically setting a blue LED's brightness based on the strength of the signal. There's some extra information in there that I can just tell you about increasing connectivity. So with the brain wave readers, you always have a problem of getting a good signal out of it. And that's based partly on the strength of the brain wave reader itself, but also on how you connect to it. So when I first hacked apart the mind flex, I thought that I had destroyed it and completely failed in preserving its ability to read data, because I wasn't getting a good signal out. And then I added EEG paste, which basically improves connectivity.  And that helps a lot. And then it turned out that that worked better than the original sensor, which was a little disheartening, but also exhilarating. Presentation. Where am I? Apologies. So choosing a robot, you want to decide what sort of...  If you want to make a flying robot, if you want to make an exploding robot, if you want to make a little crawler. And ideally all of them at once, because you can control all of them with a mesh network. And it's arbitrarily extensible. So as I mentioned before, you've got a hardware that you want to look for. Things like the chip isn't painted over, so you can actually see what it is. Or visible screws, translucent casing. Anything that makes it easier for you to see if the cables are exposed and easy to hack.  So they often have a built-in remote control. Like Hexbugs, for example, control with infrared LEDs. And so do lots of little gyros. That's awesome if you want to hack the infrared LEDs directly. You can pull down some Arduino libraries that will do that for you. Decode the signal coming out of the remote and then play it back. But it can be easier to just either modify the remote control to press the switches directly. Or to mount it on the robot itself. But when you do that, you want to consider how much weight the robot can carry. So with a little gyrocopter, you're not going to be able to mount a full microcontroller on there and still have it be able to take off. Same with the Hexbugs. Their motors aren't strong enough to control, to both move the robot and your microcontroller on top of it. The signal range. For example, if you want to control something through a wall to freak somebody out like a co-worker, then you're not going to go with infrared LEDs because you can't shoot them through a wall. But you can shoot radio through a wall. So you might want to do the microcontroller over there and pick a big enough robot to do that. Power control also. The microcontroller comes with its own battery. And you can run some kinds of hardware off of there. You want to consider how much power your microcontroller itself has. You can also use transistors if you're modding the robot itself to switch between... to basically use the microcontroller's digital and analog pins to switch the power system to the robot itself. We can go into that further. But we might not have time. And then finally, depending on how pretty you want it to look, if you want to mod the remote, it's a lot easier to keep it hidden, especially if it's for presentation. Or if you want to mod the hardware itself, then consider what you can fit in there and how big the robot itself is. Okay. So on the hardware side, there are a few different ways you can mod it. You can do this straight hardware mod without even touching the software. And that's what I did with the brainwave wings. The NecoMimi have servos up here to control the ears. And you can pull those down out and put them on whatever part of your body you want. Just make sure that you connect the cables in the same place. And then that just preserves their original algorithms and such. You can bypass the brain and hook your microcontroller up to the motors and servos and things and LEDs. And you might need specific Arduino libraries to do that, but it's all pretty open and easy. Or you can just completely lobotomize the robot and stick your own brain in there. Which is basically the same. It just doesn't preserve the original control system. So if you want to still be able to use it the first way, you probably want to bypass it. But if you want to think about weight, you probably want to lobotomize it. And then the remote side, you can use transistors to control switches or relays. And you can... LEDs. Oh, the infrared LED hack that I talked about. Okay, beyond that, I basically wanted to go into how you can optimize your interaction with the device. You can improve meditation by obviously, if you're better... If you're experienced at meditation, then you can go to your happy place or still your mind. Deep breaths help with that, picturing some bucolic scene where you're at ease. And then for attention, there's a few different interesting ones. So you're trying to maintain the highest level of focus possible. We can't yet do it off of emotions. It's just like focus or relaxation. So for focus, I've found that thinking of large numbers and adding them or multiplying them together helps. Or oddly, writing emails does it. Or if you're listening to an unfamiliar song and trying to type out the lyrics. These are all ways that if you're trying to do a stage presentation and your hardware hasn't conked out at the last second, then that's what you would do, speaking of which. So I want to do a hardware presentation for you. Unfortunately, that hasn't been the case. But if anyone has model rocket motors, I would love to talk to you. Especially if we can figure out something goat-shaped, I had a special surprise. But I also have a little mini helicopter that I'll be trying to get going over the weekend anyway. And feel free to hit me up with any questions or see how that's going. I'll give you a demo later on. All right. For now, there are any questions? All right, what's up? Ah, snazzy. To make it a bit concrete, to understand a bit better what controlling means here. You spoke about meditation and so on. Which is the bandwidth you can actually transmit? Oh, with the radio control? No, the actual signal, not the radio bandwidth, the control bandwidth. If I attach it to a simple system, a LED, binary LED, how many yes or no binary information are you able to transmit per second or per hour, whatever, doing your meditation or focusing or whatever? How much information can you actually transmit? So you get those 11 channels, the signal strength, attention, meditation, and the eight frequencies, and it only reads those once per second, or it only distributes them, I'm sure. Yeah, but at the beginning, which control you have on the data that you are sending, are you able to switch LED every second, every minute, every... Oh, like the microcontroller itself? Like your brain. Oh, my brain! Because controlling with the brain at some point, you should... I'm not sure what the bandwidth of the brain is. That's a good question. I want to look that up. And if you shoot me your contact info, then we can get back to it. My email is on my website, or it's alex.glowasci at gmail.com. I'll give you my... Glowasci is a bit tough to spell. Here we go. That. I don't know if I want to speak for this gentleman, but I think what you were asking was, if you were controlling a light with your brain, what kind of control would you have over that light? Could you control the brightness? And if so, what kind of speed of reaction would you get? How many lights would you be able to control with the systems that you're using? Oh, well, okay. So you could control the brightness. You could control on or off. So I've done it two different ways. So for the brain helicopter, right, I set a threshold. And when you're starting out, you can set it lower. You can say if it's above 70 or if it's above 80 for five seconds or longer, then turn on the light and you get this binary control. Or you can do a zero to 255 thing scaled based on the values that you're getting out of the sensor itself. And then you can control... We've done up to a hundred at least nodes on a single network that you could control from the same reader at once. If you wanted, you could also have multiple readers on the same mesh network controlling different things. And the data rate on those is adjustable. I need to check on the exact data there, though. When you say that you were able to control up to a hundred, are they like individually addressable or are they all respond to the same? Yeah, they're individually addressable. You can control them all as a single group and say everybody turn on your LED red for five seconds. Or you can send messages to specific scouts they're called in a troop or mesh network. You can send them to subgroups among them. You can send out a single command and have different scouts respond to it differently. If you wanted to use the same parameter, for example, send an argument with that, and then each one of them would take that and do something different. Does that answer your question? Awesome. Okay. Well, feel free to hit me up later. So you say you can control all these different things and adjustable, but I mean, if you just stood there without using your hands or anything, can you sort of set one of them to really bite, and then another one of them really dim without touching anything? You could if you programmed it that way. In that case, it might be easier to use an emotive set, because then you could provide different things like left and right and up and down. But with the NeuroSky itself, you can use the signal value, the attention value, and the meditation value independently. You might also, with some of the NeuroSky systems, you also get blink data. So if you blink once or twice, you could have them like different scouts to respond to different stimuli. But in terms of changing what happens on the fly, you'd have to program that in. Is that practical, or do you have to be some sort of trained ninja?  So I gave you a few ideas on how to control the attention and meditation, but it does take practice. And in terms of the programming itself, I personally think it's pretty easy to get into. We've worked to make it very accessible, and there's lots of tutorials, but we also encourage you to hit us up. I wouldn't say necessarily it requires ninja status, but it could be awesome. You can do more complex stuff that way. Yes, so you mentioned brain training. Exactly how much of that do you have to do? Would it be possible to... I know that you mentioned that you can go from low to high, but if you tried hard enough, could you eventually get to the point where you could do a low-high medium? That's something that I've been asked before, and I've never tried to do myself because I'm not that good yet. Not good enough to do that. But in terms of starting out, I think the most important thing is realizing what you're controlling and what that feels like. So people aren't sure at the start if I make myself really excited and move around, will that do it? Just figuring out what triggers those numbers to rise for you, I think is important. One interesting thing is that focus and relaxation, they're sometimes opposed and sometimes in sync. It depends on what's going on. If you're in the zone and you're working on a programming project or whatever your art of choice is, then you can be really relaxed and really focused at the same time, and then someone calls your name, and suddenly your focus is still really high, but your relaxation just goes spikes down. Basically, whenever something grabs your attention, you get that sort of reverse spike, which is kind of awesome. Yeah, that's it. Like a traffic light to warn coworkers? Like green if I'm just screwing around on Reddit? You mean doing Coffee Creek? If it's red, it's like, oh, that question actually wasn't so important. I'll get back to you later. Maybe. You could have it like, you're losing my attention, you're losing my attention, say something interesting. That actually has happened. I've had this on in a couple of different meetings and I thought it wasn't working at first, but maybe it just wasn't very interesting. And then somebody says something about robots or whatever, or what else am I interested in? Music. And suddenly it's like the thing turns on and starts going. It's actually really distracting, so I don't recommend that. But pause, please. Oh, yes.


What's going on, everyone? Sam here with Layton Sports Cards, ripping Sixbox F1 Mixer, 22, Top Scrum, formerly one hobby, and Layton number one, Random Team Style. There's a look again at your random results. As always, you can find these on the website under the Results tab as well as the link that is currently in chat. So good luck here, everybody. Let's get into it. Let me drop you guys a link to Finest PYC. We've got just three teams left, the Diamondbacks, the Rockies, and the Giants. So no team that I believe is over $30. Giants and Rockies. Again, that breaks after the two F1 breaks. We have this, we have one more F1 break, and then we've got, we're into Finest. So we've got random divisions of Finest today, as well as a picker team, both full cases, eight boxers, and then we've got Mosaic, tiered basketball, followed by two Illusions, eight boxers, and two cases of Impeccable. So good luck here, everybody. Let's do some F1. There is Lando Norris on the Raywave. So weird, there's five cards in the Raywaves. Esteban Ocon, Speed Demons. There's a different amount of cards when it's a Raywave. When it's a Raywave pack, yeah. Which is just strange. Nothing fires me up more than traffic. I thought that was the rug that every kid had. Oh yeah, Lando Norris, Raywave. It did. Nice one there. Lance Stroll on the Refractor for Aston Martin. First take is Purple Green, Frederick Vesty, not numbered on the insert. Probably will. Max Verstappen on the Grand Prix Winners Refractor for Red Bull, as well as a Mini Diamond Sergio Perez, Driver of the Day at 299 for Red Bull, as well. There's Pierre Gasly on the Speed Demons for Alpha Tari, and Callan Williams, F2 Trident Green Raywave, 93 out of 99. You could recap anything green and lower, I would say. Sebastian Vettel Refractor. Can you get Autos out of a light pack? Yeah, no Autos in the light. Max Verstappen Refractor. That's the variation! Congrats on that. Who's got Red Bull? That's awesome, dude. Red Bull is Ryan T. There you go, Ryan. Congrats, buddy. Verstappen Refractor variation. You can tell on the back there is no Refractor under the card number. So there you go. Congrats on the Verstappen. Alexander Albon on the Raywave, bunch of portraits there. Raywave, Nicholas Latifi for Williams. That is Fernando Alonso, card number 16 on the Checkered Flag Refractor. Award Winners, Lewis Hamilton Refractor. Speed Demon, Sergio Perez. The commercial has some of the best and worst things. What do you mean? Like, I love it, but at the same time sometimes I'm like, wow. What, what are you saying, wow? Mixed Shumak or Refractor? I really need to hear. It's a sketch from you not knowing who Cad Bane was. Absolutely. Absolutely. Bad, dude. My bad. My bad. I need some white noise with the fan. This bunch of spots came in. Thank you guys. Appreciate that. Carl taking the Rockies, Chiefs gone and one of the Illusions, Matt Breaks coming in, Mosaic Breaks coming in, Mixer Spots coming in. Thank you guys. Let's do another light. Speed Demon's Alexander Albon. Purple Checker is going to be Lewis Hamilton Award Winners for Mercedes, the 199. That's one there, Mercedes. Jack Doohan. Purple Green going to Virtuosi. Now I'm numbered. Thank you, Carl. Appreciate you, buddy. Refractor Fernando Alonzo. Refractor Charles Leclerc. Colton Welker, Ryan Belade, Superfractor incoming. 100%. Opmar Svannauer for Alpine on the principal card. Ray Wave. Base. What's up, Carl? There's True Green. Kevin Magnuson, 96 out of 99 going to Haas. Nice one there for Taylor D. There's Lewis Hamilton, Checker Flag, Grand Prix winner of Qatar 21. Sergio Perez, Ray Wave. Sergio Perez, Refractor for Red Bull, and Speed Demon, Sebastian Vettel, Aston Martin. What's up, Nanny? How you doing, brother? How are we doing? How are we doing? How are you doing? How are you doing? Charles Leclerc. Who plays better, Burrow or Mahomes? Lando Norris, Speed Demon's Hope to God. It's Mahomes. Probably will be Burrow. Will this snap the ankle, please? Lando Norris, Refractor, and Purple Max Verstappen, the 399. Nice one there. Grand Prix winner, Belgium. Got some action on it. Yeah, I saw you jumped into illusions and some baseball today. Good luck, Manny. Thanks, buddy. Could you die? I know you took what? The Phillies and the Orioles, I'm going to say. I know you took the Phillies. What was the other team you took? That one-on-one Funkadelic. You got a one-on-one Funkadelic. I said he needs that. Charles Leclerc. You weren't going to do any aircraft with me, are you? Yuki Sunoda, what? Funkadelic? Yeah. Absolutely, I am. 100% I am. What do you think this just, what do you think it just stops? Morning shift, maybe? Yeah. Oh yeah, we need some energy in this building. Sold out on Finest. Thank you guys. We've got one more random division left on Finest baseball. PYT is sold out. I do appreciate you all. And then we've just got to move one more Finest division. Again, that is a full 8-box case. And then we've got tiered random teams for Mosaic. That's a full case of Mosaic basketball. Uptown Funk, good god. That is Orange. Mick Schumacher, 20 out of 25. Nice one there for Haas. That is, again, Taylor D. Congrats, Taylor. Nice one there, buddy. Did you get any color out of light? Plus colored raywaves. Carlo Signs, Refractor? That's nuts, just the only thing is no autos. No autos, yeah. But you get much less color though. Really? Yeah, I would say. You probably get like Future Stars, Jack, Doohan, Refractor.  There's Oscar Piastri, Raywave.  Yuki Tsunoda, Portrait, Raywave. Checkered Flag, George Russell, going out to a Mercedes. Refractor, Sergio Perez. And Speed Demons, Nicholas Latifi. What are the Bengals' money lines? They're probably not favorites. They're favorites? Oh, dang it. I thought you already knew. I would have asked you to guess. No. What do you think the line is? Two and a half, probably, three and a half maybe. One and a half, yeah. Oh, I would 100%, I would be the quickest buyer on a one-of-one Ogden Uptown Funk Wahoo. 100% dude, 100%. Daniel Ricardo, Raywave, Sebastian Vettel. It'd be a bad day to be a one-of-one on eBay if there's a bad existed. Bad day to be a Jonathan Ogden one-of-one. Uh, what's that? Joe Scappito for Williams. Landon Norris, Refractor. Oh my gosh, the line shifted back. To what? Chiefs are favorite? Yeah. Well, that was probably a speculation that because I don't think my home's practiced till yesterday. Yeah, but he looked really good. Red-green Joe Guan Yu for Alpha Romeo. Again, that is not numbered. That's the dual color parallel. One per box. He wasn't looking at all. He wasn't, I think, God. Daniel Ricardo, Refractor. And Purple Checker, Charles Leclerc to 199. Carlos Sine, Speed Demon. And Purple Lewis Hamilton, Award Winners 2, 399. Bangles are plus 107. Are they really? Yeah. Geez. All right, guys. Lujapi the link to divisionals now. Again, there's just one division to go. Oh, no, there's not. Just kidding. There's zero divisions left. Thank you. Overtook that last one. I appreciate it. So let's get Mosaic Teared sold out now. We got seven to go in Mosaic Teared. Shoot out a quick tweet through this. Yeah, that is a full case.  That's brand new. Came out, what, Wednesday? I believe Wednesday. So that's definitely one of the newer products that we've got going today, that as well as illusions. Let's do some F1 Top Scrone hobby now. So thank you guys again for getting all the finest sold out. Do appreciate that. Still have some room and illusions and impeccable football. Thank you, Manny just took the jets. Thank you, Manny. Good luck on that one, buddy. Yuki Sunoda Refractor. Max Verstappen for Red Bull on the Refractor. Just saved me money. If I'm shanks with the jets. Yeah, I saw you got the Seahawks there, Jennings. Thank you, buddy. Good luck on that one, man. It's probably a nice kind of walker. That'd be nasty. There's Purple Elastobon Ocon. That is $2,399. Five cards. Was that for the... Uh, what was that? Yesterday. So PYT of Illusions then? Mr. Rainer for Sauce. Oh, geez. Next two breaks. There's like seven jet autos. Yup. Sebastian Vettel, Purple Green. Not numbered. Louis Hamilton. Yeah, 100... You know how that always goes that way. Yup. Next break exactly is going to be like Lando Norris. Minidiamonds to $2,999 for McLaren. You know that, like, that always happens. You know you're guaranteed the next... The next break is going to have a million... Million cards of the team that you had. Danny Ricardo. There's Purple Checker, Max Verstappen to $1,999. Stereo. That trophy's cool. Like the one that looks like a track. Yeah. I like that one. That's a... Yeah. I like that idea. I'm in. That is Esteban Ocon. Honestly Thunder, they've got pretty good... Pretty good value I would say this year especially. Hey, there you go, Manny. Yeah, there's a... It is really fast-growing, pure ghastly. And the cards are really, really nice. They do the quality on the Topschrom F1. It's by far the best on any Topschrom. Esteban Ocon. It's not even comparable. Because they're printed in Europe. That's why they're printed in Topschrom Europe. Same with all the soccer stuff. That's why like Merlin and Topschrom UEFA... They feel amazing. They feel so much better. Oh my God. That makes so much sense. Felipe Drugevich. And Auto. Chambulakbashi going to Shirau's Racing System. There you go, Felipe G. Picking that one up. Yeah, first year F1 Chrome is nuts, dude. That's like one of the most expensive. I pulled you a Hoosman Zata. Jennings, that's awesome. There's Richard Ressure. Refractor. Yeah, Stratford Thrive have really helped it grow for sure. Have you seen that... Gold Wave, Sergio Perez. Nice one there, 11 out of 50. Congrats on that, Red Bull. Nice one there. They're making a golf show. Oh, I can't wait for that. You saw it? Can't wait for that. I can't remember what it's called. Yeah, I know, but that's gonna be... I just watched the trailer for yesterday. Dude, it's got like all the good golfers too. Like Justin Thomas, Dustin Jones, say, Jordan Speed. Yep. Yeah, they got a good lineup of guys on there. And it shows like what a crazy year to choose to follow the PGA Tour. I know, right? That would like live going on and stuff. Honestly. All right guys, keep it going here. Got seven to go on Mosaic Tiered. That's the next break you do need to fill up. It's gonna be basketball. It should be probably like a Netflix show or a Peacock. Oh, yeah, it's on Netflix. It's on Netflix. There's golf on today. Yeah, there's golf on today. I've been talking about so down to watch golf. I think it's... Ooh, is that Torrey Pines? Yeah, it's a Farmer's Insurance Open. I drove by Torrey Pines. There's Gold, Purple, Esteban Ocon. I've never been to Cali before. Max Verstappen, Speed Vemens.  So, if you live in the county that the golf course is in, you're a member there.  You get three. That's cool. But every single house in that county is 10 mil plus. Yeah. Fernando Alonzo and we've got Case Hit, Art de Grand Prix for Barcelona. Nice one there. Congrats, everybody. I've never seen one of those. Good luck on that. That'll be a random two all at the end. Good luck on the Art de Grand Prix. We've had it in the past, Jennings, mostly for personals. Like, we had one of the upper deck SPs, like the Morikawa Rookie Year.  He was playing well yesterday, actually. Yeah, that's a random. Yeah, yeah, yeah. Was... Who's in the lead right now? Purple, Logan Sargent to 399. This guy named Steele. S-T-E-E-L-E. Max Homo was in second. Okay. There was, I mean, a lot of good players in it though. Yeah, oh yeah. Who's your favorite golfer? Favorite golfer, man. Sergio Perez. Checker flag refractor. It's probably between Tony Finau. Like Finau. And either Wills Alatoris. Yeah, Marcus Armstrong to 199. Mikkelsen and Tiger, good guess is there. Good, good, good favorites there. S-T, Tiger, good guess there, Jennings. What about everybody else? Who do you guys favorite golfers? Just because we're on the topic of golf. Dude, honestly? Yeah, what up, S-T? When Spieth first... I love Spieth. Spieth's my favorite. When Spieth first got, like, kind of big, I was like, this is my favorite golfer. This is the guy right here, yeah. I'm obsessed with this dude. He's just a choker, dude. Bro, he talks...  He talks so much. Like, I went and followed him at Bay Hill the last two times he's been here. Lance Stroll, Speed Demons. And he talks to his caddy. Like, so vocally for everybody else to hear, like, out loud. And it's just like... He's just, like, over-talking, you know what I mean? Lando Norris, I get that. What's up, Denar? What's up, Nicholas? How you guys doing? He's, like, nervously talking, you know what I'm saying? Yeah. I mean, he's nasty, but... Oh, he's so good. John Daly, Sergio. Ooh, good calls there, Wahoos. Ends up for the Paul D Refractor. Thanks, Nicholas. Thank you, buddy. Appreciate that. Wahoos with the Sergio Garcia. That's interesting. Sergio's, I like that. I like Sergio, I'll be in your favorite call for it. He's always mixing it up. Oh, yeah. Patrick Vassour. And Ollie Caldwell. That's going to a compost. Nice one there, compost. That is Ryan T. There you go, Ryan. Oh, Sam Ryder's leading. I owe you a talk inside of Illusion Number 11 today. Oh, boy. Oh, boy. Oh, let's see if I can make that happen, Denar. There's Ayumu Iwasa for Dams. A baseball mixer later. There you go. That'll be fun for sure. That's going to be kind of cool. Gold Wave. It's going to be, well, first of all, Lewis Hamilton Refractor. Gold Wave, Speed Demons, Pierre Gasly. Going to Alpha Torre. Nice one there, Bobby S. Cool one there. I don't love DJ, because he's kind of like, he's not the best guy in the world. He's not a very good guy. Broncos are gone. He fell down the stairs before the Masters. He was projected to win. Well, he also had an affair with another golfer's wife. Like, come on, dude. I'm also a big Jason Day fan. I don't mind Jason Day. I don't mind Jason. My agent and his agent are pretty close. That's cool. Yeah. So one time we got to go watch him, and he was like, we got to talk to him. That's cool. Yeah. Oh, dang. He's doing well. He's 500. Okay. No, just like on the tournament. It hasn't started. Up until super late because it's in Cali. Oh, because it's in Cali. Yeah. I forgot about that. Green. Carlos signs to 99 for R. Well, I wouldn't say, yeah, DJ and Tiger, I agree to some degree, but like, Phil, not until he did the whole thing with Liv, like he wasn't really a villain. Liam Lawson, purple-green, pure ghastly. But it's like, do you really blame these guys for going to Liv? I don't. Like, did you see what Dustin Johnson's contract is? He signed like, it's worth more than double what he made on tour combined his entire career in one contract. And it's like, well, yeah, I would do it. The purse for farmers... Daniel Ricardo refractor. Which is like, one of the bigger purses is eight mil. The whole entire tournament only is giving away eight mil. He gets like 30 million a year. Exactly. Sergio Perez, speed demons, Red Bull. Yeah, dude, it's unbelievable. Unbelievable. Charles Leclerc for Ferrari refractor. Grand Prix winners, Max Verstappen. I think who else is good. Siwu Kim is actually kind of nasty. Marcus Armstrong, checkered flag refractor for high-tech Grand Prix. First tee off is 12-18. Yeah, we'll catch some of it, I'm sure, because it'll probably be on... First tee is Justin Rose, Gary Woodland, Kevin Strylman. That's Saban O'Conn refractor. Not bad, yeah. It's a lot of really good young golfers. Dude, there's so many. All right, who's your least favorite golfer? Dude, did you see the dunk going down Patrick Reed in Rory?  Fernando Alonzo, speed demons. Patrick Reed. I thought that was funny. Yeah, I mean, most people are probably going to say Patrick Reed. Yeah. Purple Ayuma Iwasa to 399 for Dams on the Purple, Future Stars. Mine is far, far away, Bubba Watson. You're like Bubba Watson.  I am. I can't stand Bubba Watson. He is the worst.  Sergio Perez. Dude, he hit some nasty shots, bro. No, he's good. Like, I'm not taking it. I'm not saying he's a bad golfer. He's just an awful person. Lance Stroll Orange Red is on the Troll card. Not red for Aston Martin. Daniel Ricardo, speed demons. And last pack. Growing up, by far my favorite golfer, Ricky Power. Oh yeah, for sure. Andrea Seidel, refractor. And Gold Checker, Yukisunoda, 4 out of 50. Nice one there for Alphatari. Let's do this random really quick, guys. We've got the Art Big Ram Prix. That's going to be a random to everybody. Going to go ahead and stick the names into the randomizer. And we'll go ahead and randomize this. So going to roll the dice, guys. Whatever name is on top after nine times, we'll get to the card. Good luck. One, two, three, four, five, six, seven, eight, and nine. Good luck. Let's go into Bobby S. Bobby S, picking up the Art de Grand Prix case hit. And we'll do a quick recap here. We've got Yukisunoda, Gold Checker, Green Carlo Signs, Gold Wave, Pierre Gasly, Speed Demons to 50, Gold Wave, Sergio Perez to 50, Orange, Mick Schumacher to 25, Green Kevin Magnuson to 99, Green Raywave, Callan Williams to 99. Autos are going to be Ollie Caldwell for Campos, as well as Chen Bullock Bashee going to Shirau's Racing System. And we had card number one, Variation of Max Verstappen. Nice one there. Again, you could, that denotes by the top left, there's no refractor under the number, card number one. Congrats on that one, Red Bull. That'll do it for the break. Thank you guys again for the fill. Next up, we have the second one of these.


Okay Good afternoon everyone. Thanks for staying here so late on the final day of the conference My name is Bick Lee and today I'd like to tell you about Arlon an open-source tool that I hope I'll convince will make your lives significantly simpler especially if you work in DevOps or platform engineering and you manage many Kubernetes deployments and also the applications that run on them So the key part of this talk I hope is going to be an interactive demo. That's the I think the the fun part of the this talk and We're gonna Finalize this with some conclusions, and if there's time at the end I can hang out for any questions that you might have So before we go any further a brief word about myself I I Spent my whole career working on containers and virtualization management. I currently am a full-time maintainer on the Arlon project and prior to that I worked at platform nine as a co-founder and chief architect and then where We built open stack and Kubernetes management products and prior to that I spent many many years at VMware doing virtualization So let's talk about the problem today So as many of you know Kubernetes has become the de facto platform for running modern applications But as Kubernetes has become more pervasive You see it running in more and more diverse environments such as Edge devices right and this leads to a multiplication of the number of clusters and Applications that you need to manage and those can reach, you know the hundreds or even thousands and It's really difficult to manage all of those deployments using traditional methods and so what you really need is strong central management and one of the challenges that many people face is the Toolset and the apis for managing Kubernetes clusters and the content that runs on the clusters is Disjoint and inconsistent so for example many users Deploy or they use a tool like terraform or Eks cuddle to first provision a cluster But then they have to wait for the cluster to come up and that could take 10 15 20 minutes And then they need to grab a cube config for that cluster and stick it somewhere else For another tool to consume in order to finally start deploying applications Right, so there's a lot of sequential dependency here and weight loops and an inconsistent API across This problem Gets even worse when you talk about configuration sprawl when you have so many objects that you need to manage in settings and configurations you want to for example share a lot of settings and Distribute them across many deployments, but once in a while you'll have a Cluster here or an application there that needs a slightly different setting, right? And that's hard to manage and what many people will do is just copy and paste some yamls and make some Targeted changes, but this really breaks when you talk about updates, right? so change management is also a big problem where you want to be able to Make a small number of changes, but then propagate them to a large number of deployments while still maintaining those Individual specific customizations, this is a hard problem So that is why we built our lawn to try to alleviate some of those issues So let me walk you through some of the building principles of this tool So the idea here is Our lawn unifies the API and the object model for clusters and content running in clusters such as you know our back rules Covernal policies and applications, of course So in our lawn clusters and apps are first-class Objects and they're fully declarative style Resources that run within a Kubernetes API framework what this means is Using a single cube Cuddle apply command you can deploy many many clusters and the content that will run on those clusters All in one shot, right? So this is fire and forget. It's fully declarative You specify it once you specify the desired state and our lawn with its underlying tool chain will take care of the rest that's really a powerful idea and Our lawn embraces get-ups internally It uses a get-ups deployment engine to deploy manifests But since its API and its resources themselves are fully declarative Kubernetes objects You can put those objects in git and rely on the tool like flux and Argo CD to manage them In order to address the sprawl problem for configuration a Key concept in our lawn is profiles everything yet that you do involves profiles, which are really a way to group related sets of settings and Applications into reusable units. So for example, we have cluster profiles Which we also call cluster templates and you can clone many workload clusters from a single template And we have app profiles that let you group a bunch of related applications together And you can also make custom Changes for one or more deployments and those customizations will survive Updates so our lawn has a powerful mechanism that we call linked updates and that means you can make a set of changes to a Template or a profile and they will all Get sent to the deployments that use those profiles. Okay, and we're gonna take a look at some examples In order to implement all of this feature set Arlon Doesn't try to reinvent the wheel it rests on the shoulders of existing giants that are Well known in the community and are very good at what they do So Arlon is built on top of a stack of tools for the deployment of manifests Arlon uses Argo CD and for expressing and orchestrating cluster provisioning Arlon lets you choose between Either using cluster API manifests or cross-plane and Arlon also uses other tools that are well known such as customize and helm So how do you install Arlon? so the There's lots of instructions that you can find in the repo basically You need a Kubernetes cluster that's dedicated and serves as a management cluster And it's the same cluster that you typically use to host the other tools that Arlon depends on for example Argo CD and cluster API or cross-plane Now we offer Command line tools that allow you to Automate the setup of this management cluster and if you do that this is something that you'll end up with Based on this picture So on the left side is your management cluster and it's kind of busy But really what you need to understand here is It hosts all of your APIs and controllers and Arlon is going to add its own custom resource definitions and its own controllers You also need to get repo because we're going to use get ops operations heavily so all of your templates application sources profiles are going to be defined in Get and once all of this is set up Arlon will help you Deploy many many workload clusters which are shown on the right side So let's talk about some of the core principles in The Arlon object model first of all you have applications right since we're using get ops principles In general your application sources will live in get or a helm repository like this And to make those known to Arlon you will create Arlon apps which are just Pointers to those locations right so in this example we have guestbook and nginx which point to Directories and get and we also have Redis which is pointing to a location in a helm repository Once you do this you can organize your apps by grouping them into profiles so for example We can put guestbook in the blue profile and the other two in the red profile and the way you use profiles is That's how you're going to specify what applications to deploy to clusters. Okay, and I'm going to talk about that next so clusters in Arlon workload clusters are cloned from Something that is shared and that you store and get we call this the template or the cluster template and In this example We're going to deploy three workload clusters That are all linked to the same Cluster template and in this example. It's eks managed and pull which is an eks cluster With a managed node group Okay, so all three workload clusters will be exact identical copies of the template Except that they'll have unique names however, you can also specify on a per cluster basis some Surgical changes that you want to override So Arlon lets you specify customization patches For example Cluster two might use the same template that you might want to change the region in which it is deployed same thing for cluster three Now last but not least How do you specify what applications are going to be deployed in every cluster for that? we're going to use an annotation on every cluster and And so for the demo I'm going to use all Clusters will start out with the same set of profiles, which is the below and the red profile Okay, so initially they're all going to get the same set of apps So I think we're ready for the demo and this is a live demo. So I hope the demo gods are with me So I'm going to show you Provisioning from A to Z We're going to deploy clusters with apps and We're going to look at many update scenarios and show you how powerful the update mechanism is in Arlon And if we have time, I'll show you tear down as well Okay, so let's switch here. I hope you can see this this shows you the management cluster and it has many namespaces that are already there Argos CD is installed Arlon is installed and We also have several namespaces that are used by the cluster API system and if I look at the CRDs You can see the data types the custom resources that Arlon has installed so let's look at an example of The manifest that we're going to deploy So I have a folder here with a bunch of manifests that we're going to apply So we have the applications. There's three of them guest book Redis and and gen X Next we define two app profiles blue and red Okay, so blue gets guest book red gets the other two and then we have clusters So we're going to deploy cluster one cluster two Cluster three and they're all identical except that cluster two and three in addition to just consuming the template Which is here They're also specify a patch. This is what I was talking about earlier. This is the override so the template by default will Deploy the cluster into the Ohio region. So for cluster two, we're saying we want this to go into California and then the next one we want it to go into Oregon, I think okay Let me show you what the manifest looks like for the cluster template this is a cluster API manifest if you've never seen one and It's a Going to deploy a Kubernetes cluster of version 1.22 by default. Okay Now since The deployment will take 10 to 15 minutes What I did was capture a video of this first phase for you a few hours earlier So, let me see I had this video. So this is what happens when you Apply the folder. So as you can see We are creating two app profiles three apps and Three clusters, okay Now what I'm showing here is the Argo CD UI since Arlon is using Argo as its deployment engine Each of these boxes. It's called an Argo CD app But because Arlon also has a concept of app, let's use a different term. I call these deployment units, okay so you have a live view of the deployment units that we are creating or Arlon is creating and Since we're creating three workload clusters We end up with six of those boxes and the reason is there's two boxes per cluster So if you look at cluster one for example cluster one that deployment unit Contains the a copy of the template that describes the shape of cluster one There's a companion unit called cluster one dash Arlon Which contains resources that are needed to support the life cycle of cluster one So for example cluster one is a manifest, but it needs to live in a namespace so that it's isolated from other Cluster deployments and that namespace resource is provided by the cluster one dash Arlon Deployment unit. I hope that makes sense So what's happening in the background here is The cluster provisioning engine is Deploying the cluster to Amazon in this case and Arlon is Monitoring the progress of that and as soon as that cluster comes up and is available Arlon will automatically Register that cluster With Argo CD, which is the same tool that we're using here and then proceed to the next stage Which is to deploy the applications that we specified using the app profiles, okay? So after a while you're gonna see a bunch of new boxes Suddenly appearing here So we're going to fast forward. Let's see So in a moment you're gonna see a brand-new set of Deployment units being created automatically and there's gonna be one per app per cluster.  Okay, so this is the real thing. Okay So now that we have all of this One thing I want to mention is the way you distinguish the applications From the clusters is any application gets this naming convention, which is the cluster name App and then the name of the app Okay, so what can we do now? I'm going to show you several live update scenarios and The first one I'm going to show you is remember that we specify the apps on a cluster through this annotation I'm going to show you this annotation so If we look at cluster one only this cluster one has three apps as expected if I look at the OEMO for cluster one This is the profile I was talking about. Okay, blue and red So what if we change the annotation to remove red Remember that red currently holds Redis and nginx I believe You can see that two apps got deleted automatically and this is happening to all clusters not just cluster one Okay, because the other clusters are also using No, I'm I'm sorry This is only happening to cluster one because we are modifying the annotation of cluster one only Now what happens if we completely remove the annotation? Then the final app goes away Okay, so let's restore the annotation And those apps come back Now let's get to what I was saying earlier You can also change the composition of a profile by editing it live And this will have an effect an immediate effect on all clusters that are using the profile So for example, if I were to edit The red app profile It's very simple. It's just a list of Of app names So let's filter this based on all the redis one So you can see that clusters one two and three have redis If I just delete This from the app profile They're all gone Okay, so live updates of profiles Have an immediate effect Let me show you Updating an application source So let's say we looked at engine x on cluster one and engine x manifest is currently living in git and let me show you the Manifest for engine x. So it's a stateful set. Okay Let's Maybe change replicas to three Let's do a diff Okay So we're going to commit this change and get bump replicas to three And then let's Push let's see what happens And immediately you'll see that the stateful set controller has detected the change through our on an argocity And has scaled the deployment to three pods. Okay and Last but not least The most powerful and impactful type of update that you can perform is actually cluster upgrades So imagine you have a hundred clusters deployed in many edge locations And they're all centrally Specified through a single template and you want to upgrade all of those Kubernetes Clusters to a newer version So how would that work? You would go to the manifest that we're using And let's see we want to go to version 23 123 Okay, so Oops Let's do a commit bump case version to 123 And before I do that Pay attention to the boxes labeled cluster one Cluster two and three. I think they're all on the left here What are you going to see is as soon as I commit it and push the change Those will refresh after a while and then they'll flicker from green to yellow and back to green It's happening pretty fast Yeah, so what's happening here is We've sent a signal to the cluster api subsystem That we do we want the new desired version to be 123 Even though it's showing as green What's actually happening is the upgrade is in progress right now. Okay and the way you can confirm that is to go to the Amazon console and you can see that it's showing The control plane of the cluster at version one to two But if you do a refresh, let's see It's saying updating right so we've triggered the potentially large-scale update And last but not least It's also very important That we be able to clean up All the resources that we've created whenever we want And since everything is fully declarative and everything is a first-class Kubernetes object You can just do a kubectl apply. Sorry a delete of the whole folder and it will Arlon will orchestrate The cleanup of all of those resources and that'll take a while. Okay So I hope that this kind of give you a taste of what this tool the kit is capable of and So we've shown A unification of The api and the tool set and methodology for managing clusters and applications We looked at profiles on how they Help you address the problem of configuration sprawl and we've also looked at how Arlon offers this very powerful linked update mechanism where You can make small changes to set of shared profiles and cluster templates and have those changes Propagate to all of your deployments While preserving any customizations that you may have specified For more details feel free to visit the repo There's a slack Channel if you have questions and of course you can contact myself and any of the maintainers I hope this was useful to you and i'm gonna Maybe take a few questions if we have time Thank you very much