Blum provides a transparent look at the iterative troubleshooting required to bridge high-level architecture with the granular constraints of CDN integration. It is a masterclass in how senior developers navigate the messy realities of file handling and API limitations in real-time.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
Coding YouTube-like app: Part 7
Added:There we go.
>> Hey everyone, welcome on in. Happy Monday. We're going to be continuing our building YouTube app. Basically, we've got most of it. I mean, the most minimum part of it done, right? The video part, [laughter] which the the important part where you can load data, the upload videos, and then play the videos and then fetch the videos. So, we've got a full API. I'm really happy about it. And what we need to do next is probably do some file hosting on a C. This is like really important. This is a critical thing for large large data like this. We need to be able to host it. Yo, hey, how's it going there, Icy Box? Olas, good afternoon. Welcome on in. Good to have you here. We're uh we're going to get going. We've got some plan. We got a plan here. We've got a plan. We've got a files API. I think this would be a good item to get us converted over to. So, [music] one of the things that's really important Hey, Nina. Good to see you.
Good afternoon. What's today's plan?
Well, we're I I think today will be sort of like the maybe maybe the last day that we work on the YouTube app because we got it working, right? And it does what do you call it? What do you call it? Um shows videos, let you play videos. Hey, Porter Jaguar. Good to see you. Welcome on in. Happy Monday. We've got plan.
We've got a plan for today. All right.
Let me click some buttons over here to get everything in the right spot. There we go. Perfect. Okay. All right. Yeah, we got a plan. So, I'm going to be adding the files API today, I think.
Hey, Torva. Yo, Torva, good to see you.
How's it How's it been? Good to have you here. Hello. Hello. Hello. Also, Muhammad. Yo, Muhammad. Hey, Stephen.
Happy Monday. Let's wrap up the cool project. Let's do it. Let's do it.
Joseph. Joseph, you too. All right. Good to have you here. Thank you for joining on in. Yeah. So, I want to do maybe the files API. I think that was pretty easy.
I think it was pretty straightforward.
This is very important item that you need to do when you have like things like a lot of binary data. You want to be able to distribute to users over a content delivery network, right? CDN. I can't believe my washer tripped the power. Oh, but still works. Oh, hey. Oh, well, that's lucky. Well, lucky unlucky that it tripped the power, right? So, right, the fuse box or something. The fuse blew or the fuse tripped. At least it still works, right? At least it still works. So, we're going to probably look at doing the files API because this was one of the recommendations that was pushed heavily yesterday. So, we'll add files API.
I think that would be a good plan. So, when we upload it, all we have to do is change the file upload pattern so we get the right file name. So, let's see here.
Let's get open. So, [music] I want to take a look at PubNub files API.
Here we go. Uh, let's see here. Click the right words here. Here we go.
Perfect. Okay. And then we'll do the there's a REST API which might work. We could also do the Python. There we go.
Oh, for Python SDK. Perfect. Okay. Let's figure out how to do this. All right.
It's been so long since I've done this.
So, file sharing API with the Python SDK. And this allows you to do videos. 5 megabytes seems pretty small though. Uh, I think I think we'll we'll figure it out. We'll figure it out. All right. Uh, upload file specify channel. Send file.
Here we go. File name message should store. [laughter] Wait, hold on. Wait, wait, wait.
Uh, I mean, shouldn't that always be true? I figured it should be. Whether to store the published message file in the channel history. Okay, got it. Okay. So whether just to trigle trigger a signal saying that the file is available for download or to uh uh store that as a history message.
Okay, got it. Okay, so let's get this going here. So we import some packages.
All right, let's get our package list here going here by requirements.
Here we go. We'll say pubnub. What version do we need? All right, let's go to this pi pipi.org.
or type in pubnub.
Then we look at the version is 1072.
Okay, 1072. Perfect. Then we say whoop. There we go. pip install-r requirements. So that way we download all the requirements there.
And then we will start reading the docs. Let's do this.
Okay. So let's see here. So we get a nice little send file function and then we got file path. Oh, so we have we still have to open the file. Okay, so we still have to open the file. That makes sense. And then we send the file. Okay, perfect. Do we need we need [music] some API keys? Probably. Yeah, we probably need some API keys. I wonder if the demo keys work. Do you guys know? We're going to find out. All right, so we need the configuration.
All right. PubNub Python SDK. We need to initialize.
Here we go. Okay. Let's [music] copy and paste some of this stuff here. Where should we put this at? I think we should put this over in the video. Right in the video file.
Here we go.
All right. Just [music] close that.
Close that by our video file. Backend videos. Okay. So, let's pull in this here. Wait, wait, wait, wait.
Actually, what I want to do is put this into a reference. All right. So, let's do PVP paste reference and then open that here on our screen.
Here we go. I want to call this my what do you call this here?
We should call this We need to make a function name. We need to make a function name basically. Okay. So, let's build this over here. So, we should say maybe like upload upload. We need a up we need an upload and we need a fetch function. Basically, we need to be able to know what the the endpoint URL is going to be.
I think we're going to be able to get this to work. I'm pretty sure. All right. Def upload uh CDN.
And we need the file. What do we need?
Uh I suppose we could do video ID [music] cuz that's what we've been doing, right? Little bit of video ID there.
And then we need to [music] grab our requirements for CDN.
There we go.
Then we need to configure our CDN.
Okay. Create a configuration.
This is Python server.
And then I don't think we need to do that. Okay.
Yo. Hey. How's it going there? Autumn.
Autumn Dre. Good to see you. Hey, mate.
All right. Thank you so much. Appreciate it.
Oh, it's you. Uh, I mean, Havens05.
Okay, sounds good. Yo, how's it going there, Ren Ocean Porter? Uh, good to see you. Whoa, how's it going? Happy happy Monday. We made [music] it through the weekend. Hope you had a guys. Hope you had a good weekend this weekend. All right. Oh, who's that? Uh, Moroni. Uh, Moronimus. Oh, Ren renown Mr. Anonymous.
[laughter] That's the way to say it. Mr. Anonymous, good to see you. Welcome on in. Happy Monday. All right, you guys.
Let's see. All right, so we got our pub knob. And then I would like to be able to upload CDN. So now we can do a little bit more here. Let's grab this over here. Let's go. We need this data here.
We need these things. So let's grab this into our reference. Set paste.
Open this. Here we go. Okay. Where is Oh, wa. Oh, this included everything.
Oh, I missed this. Okay. Send file. Oh, this is nice. Look at that. Oh, it looks so much easier. Okay. I thought this was going to be tricky.
This is going to be easy, you guys. This is going to be easy. Here we go. Yo, Mr. KP, thank you for subscribing. you join the right channel for software engineering. Today we are building a YouTube app. We've succeeded at building the server side. We've got a front end and we've got a uh a server that can store the video files. We got everything and now we're adding content delivery network today. That's today's plan. That is today's plan. Thank you for subscribing.
Today may be the last day that we work on this because we basically achieved the MVP which was a lot of fun. Hell yeah, Run Ocean. All right. Good to hear it. Good to hear it. Yeah, we're we're live a little bit earlier today and then tomorrow we'll be live an extra half an hour earlier as well. Mr. Anonymous, let's go. All right. Good to hear it.
Fantastic. Hey, Lazy, how's it going?
You're doing all this without AI. Yes, that's the part that we like to do because we want to keep our our our I had all these decades of experience crafting my capability to engineer software, my craft, right? I don't want to lose that. I don't want I spent so long. Hey, Parker. How's it going? Hey, Stephen. Hope your morning is going well. Hope your morning's going well, too. We're having good morning so far. I got a lot of I've got a busy week here.
[music] I got a very busy week. And I want to make sure that I'm still streaming with you guys. So, we'll be streaming a little bit earlier than usual. Re Ocean, thanks for saying hi.
Respect, Lazy. Thank you. Appreciate it.
All right, you guys. So, let's see here.
So, we need to open up our file, right?
So, we're going to have a video file, and it's going to look the same. It's going to look the same as this other one over here. Where is that at? Where do we put this? Oh, here we go. Here we go.
This is going to be similar to this. So, let's grab this this here. And we're going to put it right below it. Because it's mostly the same here. Oh, and we're also going to have a file. Do we want that? Maybe we do. Okay. So, we're going to copy and paste this. Here we go. And then we're going to do a little bit different. We're going to do a little bit different here. You made a nest frame. Wait, what does that mean? Wait, Porter Jaguar, what is nest frame? What is that? What is that? Hey, Frosty, good to see you. Yo, how can I work in tech even if I don't have an aptitude for coding? Well, you don't have to do the coding part. Also, the AI does the coding for you anyway. You can go into an adjacent role like product management or marketing or sales. Hey, Cardinal Ernum, good to see you. Welcome on in.
Happy Monday. It's an app with a lot of tools. Oh, got it. Okay. Ah, that makes sense. Good to know. Okay. So, now we've got our video, our file name. We've got our file name here. We can open it. But instead of shuttle copying it, basically moving it. CIS util shutil. We don't need to do this. We're going to do something else over here. Let's see here. All right. So, let's take a look.
Send file. We got our pub knob which we don't we it's a global. It's a global so we don't need to worry about that. You can technically build an app with AI and to end nowadays. Yeah, you can. Yes.
Yes. Yes, you [music] can. You can build anything you want. The code is available to be generated for you automatically by AI. Here's the deal. Most people say, you know what, the AI doesn't write good enough code. I say it it it does. I say it does. Does it write as good of code as most optimal? No, it doesn't need to be though. It does not need to be optimal. It needs to be it needs to be just good enough. And it is. [laughter] It is. It works. How do you keep track of what files are where and where it's connected? Uh because we built it all.
We built it all from scratch, right? And so the main thing is you the main common pattern is MVC, right? So you do MVC, which is model view controller. And basically this is the controller file and it imports all the models and then the view is the JSON data output. AI is only good as a person instructing it.
Hey, there you go. All right. I like the way you say that, Lazy. Sure is. Do you watch the WC? What is World Cup? World Cup. World Cup. I saw some games. Yes.
Yes. Saw some games because Sam was like, "Hey, you want to watch some World Cup?" And I'm like, "I don't know." But I did. Hey, Muhammad. Hey, Stephen. Good to see you. Welcome on in. Oh, Bear Bear. Yo, thank you for the chilly Bear Bear 2002. Appreciate it. My gratitudes to you. Wow, it's like an early morning.
Here you go. Thank you so much. Whoa.
Yeah. All right. All right. That was cool. It was cool. Thank you. All right, you guys. So, yeah. So, it's really straightforward to keep track of your files and you just do model view controller. It's very common abstraction. It's very lightweight abstraction. you keep all of your your model files that deal with the whatever sort of independent task that it needs to deal [music] with and then you import that as a as a a package. Right? So you've got this videos this videos right here. I don't even think we're using database in here cuz we can de not import that. So yeah, we got this videos and we've got a a database abstraction layer that [music] keeps things organized. American Messi over here. Oh, Frosty. Hey. All right. Frosty, Frosty, thank you. I see what you're saying. I see what you're saying. Okay, so we've got our Let's see here. So, yeah, pretty much NVC if you guys are familiar with it, right? It's just model view controller NVC.
Amazing. Amazing.
Thank you. All right. So, where are we left at over here? So, this is our videos file. This is our videos model.
And we've got our upload CDN. We're going to be doing this pattern here.
Read binary. Uh we are not we just need to read read the file. Read it. We don't need to write it cuz we already have the file. How are we going to do this? File.
File handle.
File.file.
Is this something that we could just grab because we're uploading it directly? So, this is the part that I don't know. This is going to be interesting. This is going to be really interesting. I don't know if we could do this part here or not. We're going to find out. Still learning things. Hey.
All right. Me, too. It's a forever thing. Learning things is forever. Have you considered or being offered quant roles, Frosty? Uh, I've done some financial I've done some fintech stuff for Yes.
Mhm. Yes, it does. Psych. It does.
Psych. It does. It has a GitHub repo.
I'll share that with you right here if you're interested. Let's see. Is it here? No, it's around here. It is. All right. Here. I'll put this over on our Discord channel, you guys, under link share.
Uh, is it already? Is it already here?
Yeah, it's around here somewhere here.
I'll just put another link share for you guys. So, it's right here in our Discord right there.
Pub number exception. How does the exception even get thrown? If it gets thrown because of several reasons, right? And is it is it in here? Oh, yeah. Here it is. Yeah. Cool. All right.
Good to hear it. So, say say the send fails, right? Say the send fails, the send file fails. It could fail for a lot of reasons. So, we need the exception to figure out what reason it failed for [music] and then we can fix the exception, right? So, that's what we got. What are you going to call the app?
Uh, so here vi overview.
There are some ideas that people posted.
We've got Blum Tube or Pub Tube. Should we call it something different? Because we could we could call it something different. Uh there basically doesn't have a name yet. Um so other name I don't know. Right there. Right.
There we go. There we go. So what's that going to be? Where's it going to be? I don't know. I don't know. If you guys have any good ideas, we will put them We'll put them on the list. We'll put them on the list. Yeah, we'll put them right there. Okay, so let's see if we can figure out how to send this file. So file name sample file. Wait, file that.
Wait, why? Um, hold on. File path. This is weird. Open file path. Oh, the name of the file that's going to be on the CDN. Oh, I see. Okay, let's see. Okay, I'm actually kind of curious about that. And then you get a channel. Channel could be whatever.
Doesn't really matter. Is channel defined in here? Oh, it is. It is. It is defined right there. Okay. So, we could do that as well. Something with the tube might make it sound like pirating site for adree YouTube. Be careful. That's a good point. That's there's [laughter] Yeah, you got it right there. We've ended in tube right there. So, we should call it um video videos. [laughter] Ticky.
Tick. Ticky. All right. I like that idea. Nice. This is my favorite one right now. I like ticky talking.
All right. Let's save that. Let's save that. It's a good idea. Good idea, you guys. All right. So, how are we going to do this? Uh, the only thing I need to know is, so we've got the name of the file that's going to be on the CDN, and we need to open the file for reading here. Now my question is if we're posting the file directly then it must be file.file which is the binary data.
So let's look let's look up what this command is right here on the internet.
Let's go a quick little Google paste and let's search this up here to see what this does. What is it looking for?
Oh. Oh okay. Source file destination file. Perfect. That's exactly what we're looking for. All right, good to hear it.
Hey, hidden sound. Hidden in sound. Good to see you. Welcome on in. Happy Monday, Arizon CPU. Good to see you, too. Nope.
Multiple apps end with tube and don't get any notice by the official YouTube app. Oh, okay. So, we've got some ideas on the name. What should we call it, you guys?
Video app. [laughter] Video app. What the heck?
Is it obvious what that is? Because they are very small. Yes, that makes sense.
Oh, Blump. Oh, that's Oh, there you go.
I've got another one. Blump. All right, we got some We got some names here, you guys. We got a few names. All right, good to hear it. Good to hear it. All right, so let's see here.
Let's see if we can make this work. So, the good news is we already we don't need to open up the file name because it's not for anything that we need. So, we can close that off. Close that off too. And now we've got our file name of the sword. That's the destination file.
So this is what we can use to upload on the file name here. So let's do set no paste. We say wait wide app. Wait. Oh, vid app. Oh yeah, just name. Hey, just the name. All right, vid. Hold on. Let me let me go back here. It's translating. It's translating it, which is weird. Vid app. V app. V a All right, there you go. Video app, right? A little bit of shortening, a little bit of truncation there. Looking good. Looking good. All right, let's see here, you guys.
Now, I want to see we only need to return really what we need to I'd like to see what the response is first.
Figure out what the answer is. So, we should throw this in a try except I don't like having to do that. It's the only option we have. Response.pubnub.
pubnub. Send file. All right. See if that's it here. Yep. Send file. Execute.
And then we couldn't put some dots at the end. Okay.
Dot channel name. Here we go. Channel.
And then I'm just going to say uh new videos channel uh pubam. Oh, it's a good one. Hey. All right. Hey, Bonzupi. Good to see you.
Welcome on it, Blimp. [laughter] All right, blimp. And then we've got pub stream. Good ideas. Good ideas, you guys.
All right, I like it. Good to have you here. All right, let's see here. Let's keep going. All right, I'm interested in that uh file name. We could do file name here. We'll just call it the file name so that way we know exactly what that is. And then we could say, we don't have to say a message. I don't think we could just say um uh upload upload success.
Here we go.
Maybe upload success. We should probably also put the file name in there.
Although I believe it's already going to be available anyway, so we don't need to do that. So we can just do this here.
There we go. There we go. Hey Kyle, good to see you. Welcome on in. Happy Monday.
Uh, te Tabor Taborio. Hey big brother, welcome on in as well. Good to have you here. Torio, you guys. I like your name.
Torio patients.
Hey JDC12, good to see you. Thanks for saying hi. Welcome on in. Good to have you here. All right, so we got our file name, message, a bunch of metadata, and we got file object, which it Why is this a sample file? Uh oh. As sample file. Sure, sure, sure, sure. File object is going to be the files.file. File.file. Here we go. We need this here. There we go. Like that.
And then we also need to bring in one other thing here. I need this. I need to [music] bring this in so that way I've got the file reference right there.
All right. Hey, how's it going there, Prince Roit? When the live started and when will you start every day? So, I usually start at 8:30 a.m. Pacific Daylight Time, Pacific time, Pacific time zone. I'm in Seattle, Washington, United States. The that's the usual time. However, I have a bunch of meetings throughout the next for the entire week. So, I have to start earlier, otherwise I wouldn't be able to stream. So, I'm going to start at 7:30, an hour earlier. You motivated me to continue learning, man. Oh, Ren, excellent. Good to hear it. You keep on learning. It's a forever thing. It's a forever thing, you guys. Lupe, hey. Hey, Lupe. Thank you for the flower. All right. My gratitude to you. Thank you very much. Lupe, you guys. Thank you.
Thank you at Lupe.
At Lupe [music] Loop. Oh, wait, wait. Can I sit? Can Are you still there, L? All right. Well, thank you very much, Lupe. Appreciate it.
Uh, you wrote a paper last night on the difference between how you use Edge AI and Facebook uses cloud. Lupe, hi. Thank you for the flower. Pub tube. Hey, there we go. I like that one. That's also a good one, you guys. Let's do it. Let's do it. Pub tube or pup tube. [laughter] Wait.
Public tube. Wait. Icy box. I don't know about I don't know about that. I I probably call it pub tube. Pet peep tube. Okay. Yeah. Right. Okay. Yeah. I think that's going to be uh the these are suspicious. These are sus. Yo, Mr. Anonymous, thank you for the GG. I like the GG's. Good game. Thank you. Feature comparison and competitor audit comparison chart. Oh, the edge and Facebook. Okay.
Nice, Kyle. Nice. Yeah, that's good content. That's good content because you can use that to attract to attract potential prospects there. Pub. Oh, I that was actually a potential name for the actual company. This was a candidate name for the company itself. This was it was right there. Uh it was Yeah. Know you got to be careful about these guys.
These guys you got to be careful. Pub Pub. Yeah, that was Yeah. Pub. This was originally the one of the names. So, it was going to be PubHub or PubNub or We couldn't do Pub Sub because that was already a thing that already existed at the time. Anyone tried Quinn 3 out of 8 yet? I have not. Hey, quick fix. What did you miss? Not nothing special at this point other than we got a thumbs up from Lupe. Hey. All right, Lupe. Thank you. My gratitudes to you. Blum talk.
All right. Here we go. Blum talk.
[laughter] Hey, we got so many ideas, you guys.
This is great. Code space. Yeah. So, we're you're you're good to go. Lupe, thank you again. Tick. Oh, Ticky. Oh, there we go. I like that one. That's another one. All right. So, we got uh tick tick here. I'll I'll do it the way that you spelled it. Ticky bloom. All right, there we go. Right there. Nice, you guys. Nice. Seeing all the markets features next to each others shows how different they are. They're all pretty different, right? They're all pretty different. Ooh, ticky. All right, I like that one, too. All right, tick iie.
There you go. So many these are two so many ideas, you guys. This is crazy.
Hey, Jay Looney. Are you coding Python because Python is fun or because YouTube is originally written in Python? Was YouTube originally written in Python? No way. Really? That's amazing. I had no idea. Ticky.mme. Here we go. Ticky me.
There you go. Right there. King George, how's it going there? Rude. Rude Roth, how's it going?
Sending Ticky some money. Oh, is that how it works?
Yeah. So, Jay Looney, I had no idea pub YouTube was originally in Python. Wow.
Wow. Did you guys know that Kyle? Hey, you're good, Kyle. You're good. Good to go. No, go to that website. It's Oh, it's actually a website. Okay. Uh, we will go to it very quickly off to the side of the screen so you guys can't see over here real quick.
Uh, [music] let's see here. Let me just do this again. Copy, copy, copy. Okay, ticky.me. [music] Here we go. All right. It is.
[music] It is a website. Here we go. I don't know what's going on there, but it's a website. All right, there. Still written in Python, as far as I know.
Just a huge amount of C++ and hot spaths. Hey, that's the way to do it.
That is That's the good way to do it.
Hey, Tiny Treasures, how's it going? It just came from your Instagram. Oh, hey.
All right. Welcome on in. Yeah. So, you've seen on the Instagram. This is where all those reels get posted from this stream right here. That's how it works. Hey. All right. Good to have you here. Welcome on in. Scroll down. All right. Let's try real quick. Uh it says uh a bunch of stuff.
I I don't know what it is. Insight into payments. Safe and secure. Check promotions. Scan.
Uh are you ready for ticky 2? [laughter] All right. I don't know what the deal is. Yo, how's it going there? Ah, Audib, hey, Audib, thank you for subscribing.
Good to have you here. You joined the right channel for software engineering.
This is where we build tech live on like real. So, we can't that's that's an idea we can't have. That's a someone else already took it. We really code live. We really do. We really do code. Oh, and we got a bug. We got a bug that we got to fix here, you guys. We got to fix it. We got to fix it. What do you use to program in Python? me. Are you talking about the text editor that we see here on the screen? A little bit of text editor here. Just a smidgen of text editor stuff here. This is Vim, T-Max, and Ghosty. Vim plus Tmox plus Ghosty. Vim, T-Max, Ghosty right there. Vim. Yeah, you got it. Vim. Ask Google what it is. Okay, we'll have to check that out. Do you plan on releasing the YouTube like app in the public? In how many months could you achieve this?
Well, fan, we could fan CTO, we could we could get actually we're really close to being able to release it right now if we really wanted to because it already supports uh the API. All we have to do is just make the front end. We just have to make the front end. So, let's see here. We need to make the front end, you guys. So, let me scroll. So, open front end uh index. Here we go. Here we go.
So, here's here's the front end. Whoop.
No, not that window. Let's pull this over here. Yeah, here's the front end.
And then all we have to do is add scrolling and infinite scroll and you're good to go.
>> It's so satisfying, right? It's just so so it's actually not far off. We're actually not too far off from being able to release it if we really wanted to.
Blumme or blum you. Oh, hey. Very nice.
All right, Icy Box. Thank you. Thank for the party poppers, you guys. Let's add that in. So, I like that idea here.
Let's put that in right here. So, you said blum me [laughter] or blum you.
All right. All right. Hey, there you go.
Right there. Still YouTube has a lot of uh bug in YouTube shots. Oh, does it reprints? Really? They have bugs? I didn't know what text are the front end.
So, the front end right now is just straight up CSS and JavaScript. It's just very simple. We And that's the way I like it. I don't really want to bring in another framework because the browser already is a framework, right? It already is the framework. We don't need any heavyweight react because it can get slow. It can bog you down. It can it can be a very long load time. One question, who will manage the moderation if AI isn't enough? Oh, well, if we really were to release it, if we really were to release it, just to let you guys know, I'm not really planning on releasing it.
Nope, we're not [laughter] I'm not intending to release it. I'm just making it so that way if you guys wanted to, it could be a reference or something that you could choose to release if you really wanted to. if you wanted to. Yeah, same. Uh, what do you think of my custom nav? I don't know what that means. What does that mean?
Oh, you're Oh, this this is great. Yeah, this is fantastic.
Look at that. It's great. Very good job.
Very good job. I like it. I like it.
Good job. Good job.
YouTube has had a playlist of shuffle feature that has been broken for years.
Oh, wait. No way. I have not used it.
Hey, Tiny Treasures, recommend us a way to make it in tech in this era of AI. My It's a Here's the good news. It's the same pattern that's always worked in the past. Uh if you want to get a job and you already have the tech skills, but you might not have experience, you need to get an adjacent role, right? So, either data data cleaning role, a what do you call it? a tech support role in information technology role. The IT role is mostly about you know uh admin right admin of the tech like lap setting up laptops and provisioning you know octa credentials and things like that MIT license you can just fork it and make something it yeah exactly exactly bonzupi precisely you got it if you ever plan to do so uh anyway hire us as a moderator oh okay we'll do hey how's it going there overwhelming play right.
Good to see you. Uh, AI viewers stream boo. I don't know what that means. I don't know what that means, but I read it. I read it.
Remaking your capture against Oh. Oh, hey. All right. Nice.
Good idea. Quick fix.
All right. All right. Re Ocean. See, that's that's an adjacent roll. That counts as an adjacent roll. You You learned it. You learned it. All right.
Let's get our video upload working. So, we're going to try to make this work.
We're going to see. I might need to shrink the file because there's a limit of 5 megabytes. Obviously, that's a soft limit. We can increase that. If the free tier is a a 5 megabyte limit, that's a 5 megabyte limit. Homely multitasking. I know, right? We got we got a lot of things going on over here.
Icy Box, Stephen, uh, what are you saying over there? So, let me let me So, I need to try to accept. We'll do the pub knob exception as e and then we'll just we'll just cop we'll just print this. We'll print this here. Little bit printing here. Except uh icy box. One second. Let me type this out real quick. No, except not execute.
There we go. There we go.
Okay. And then we could say we is there like a default except no. I suppose I suppose we we'll just do this as well. Here we go. But also at the same time, at the same time, our file name might be different. File name. Here we go. File name. All right. Perfect.
Perfect. Are you MIT graduate? Hey, tiny treasures. I am not. Sometime ago, I did sharing platform of all in memory with the duration limit images and text and code highlighting for personal use. All in rust and axom. Yes, rust and axom.
That is my favorite. That is my favorite. I love it. I love rust and axom. Rust. Oh, it's so good. Rust. Here we go. And Axom. Axom. [music] Nice. Very nice. Icy Box. I love it. I love it.
I am not. Uh let's see here. Uh what do you mean the free tier only limit? Do you want a maximum tier since your company created software? Yeah, I could.
Yeah. Yeah, I could. I could. Yes. And we could actually update it right now if we wanted to. In fact, maybe we should.
You think maybe we should? I think I could probably figure that out. It would require me to go into Look. Oh, see, I would have to So, in order for me to configure that, I have to turn on the VPN. And if I have to turn on the VPN, that means I the stream will go down.
Obby, how's it going, Obby? Good to see you. Welcome on in. Happy Monday. So, CPU, yes, we could. Yes, we could. I just have to so I have I have to turn on the VPN in order to configure the key and then then I can get above 5 megabytes. Hey, One Punch Man. All right. Good to see you. Welcome on in.
How's it doing? I'm going good day. Good day. Thank you for obby for asking.
Thank you for asking. Hey Redless Saver, welcome on in. Good to see you as well.
Happy Monday.
Prince Roit, how are you testing the backend as your code? I have a test file here. Let me see here. Close that. It's a little It's a small test file just for the important parts right there. So for the streaming, for the uploading of the video, and for listing the video. So it's like a integration test. It's an integration test. Hey, how's it going there, OddHive? Good to see you.
OddHive, welcome on in. Wait, you have a company? Ren Ocean. Yes, I do. What is your journey? Let's take a look. Okay, so let's zoom in on this, you guys. Uh, since you guys asked, my name is Steven Blum. I am the CTO co-founder at PubNub.
Todd Green is my co-founder. Thank you for asking. We raised 134 million. We're at Series E. We've got over 1 billion devices on my network. They are doing things like inapp communication, multiplayer games, on demand delivery, a whole bunch of other things.
Okay, we've got so many fun things.
PubNub. Yeah, exactly. 68 patent claims that have been granted. Hey, how's it going there, Kit? 91 car, welcome on in.
Happy Monday. Good to have you here.
XYZ. Hey, man. I'm a beginner here. All right. Good. We're all beginners. We're all beginners, you guys. All we have to do is just continue to learn for the rest of our lives. That's the trick.
That's how it works.
So, yeah. So, Prince Ro, if that answered your your question, let me know. And also, Ren Ocean, you're part of Pub Hub. Yes. Hey, Neon. Yes, you got it. Cap. Uh, wait. Is that Wait, cap. I always get that mixed up. The cap or no cap? All right. Which one's the right one? Yeah, it answered your question.
All right. Good to hear it. Good to hear it.
So, uh, we're not all beginners. Oh, yeah. Okay. Yeah. [laughter] Well, we we're all life learners. Let's put that Let's put it that way. We're all life learners. You got a one patent on plasma chamber, too. Much effort for nothing. Well, hey. No, a pat that counts. That counts. Kit 91. CA. That counts.
You got a good start there. You got a good start. You're not a beginner. Yeah, that's true. I know. I know. I've been We're all life learners though. We're all life learners. Local men. I'm beginner in car mechanics. Ooh, nice.
Road the saber. I was thinking of learning Typescript. Yeah, that sounds good. You don't know if it's worth it because most of the sites do business related. say, "Haven't had any problems using JS." Yeah, same here. Yeah, I I use JS. I like JS. Typescript's fine.
Typescript's fine. I like JS though.
What is your first job?
I mean like yard work, right? And then uh cashier and then [music] um I don't know, database admin. Uh and then like engineer, like a whole bunch of things happened. Is it Python? Yeah.
Hey, good eye. You know it. That's Python right there. You got it.
Python. And then this is bash. This is bash scripting right here. Right. A little bit bash. Little bit of bash here. Some shell scripting at the smidgen of shell scripting. In science it counts as paper, but I dropped physics 10 years ago. Oh yeah. Here's the deal. Yeah, you can go to school.
You can educate. You can get education.
And you know what? It turns out that doesn't really matter that much. The only thing that matters is that you got the ability to work together on a team with other people and you have a good communication skills, good communicate pattern. There's so many things that you can do. There's so many things more than just the piece of paper. Can we know what's coming? Yes, absolutely. How long the stream go from now on? Uh, we will end at 9:30 a.m. my time. So that is let me double check that really quick for you guys over here. Yes. So we got about an hourish about an hour. You're a PhD student almost PhD but didn't find yourself as one. Yeah. See that's the deal. It's just a bunch of um learning and I like application. I like applying myself to the real world rather than just learning. I want to actually do something I want to accomplish.
Yep. So, the plan for today is we're going to get our CDN working. If we get the CDN working, that'll be kind of like the nice little like little bit, the cherry on top. Okay. See you in 510.
Sounds good. You would pay a lot of money to buy groceries from Steven the cashier. Would you? [laughter] I was. I was a cashier. I was That was one of my first jobs, you guys.
All right. So, Redless Saber, I would say definitely at least try it out. Try out Typescript. Try out Typescript. I think it's worth it just to try it out.
Hey, how's it going there, Eie? Eie, welcome on in. Happy Monday. Let's see if we can get our CDN working here, you guys. Let's see if we can get the CDN working now. Here we go. All right, let's grab that. All right, I think that's everything. One, let's go here.
One, one, two, three, four, five. Yeah.
Okay. 1 2 3 4 5. Looks good.
We can say print file sent. [music] Okay. Double check that there's nothing I'm missing here. Oh. Ooh. Ooh. Yeah.
There we go. Okay.
All right. So, this is going to be worthwhile. This will be worthwhile. We should actually return that. That that should be something that we return. So, we we should return this here. Let's return that file ID. Okay. So, file.file name. File name is the new name. Here we go. So, paste [music] that. All right.
Nice. Right there. Right there. All right. Excellent. Because we already know what the file name is going to be.
So, this will be the name on the CDN, maybe. Let's delete this here. Okay.
Which large language model would you recommend? Vibe Code mobile productivity app complex and logic heavy with behavioral engine. Did you say which model? Um, I mean, Claude is the good default one. Codeex is actually pretty good, too. If you're going to do that, I would say Codeex for mobile. Fable 5.
Uh, just GP56. Just do GP56. My recommendation. You got a subscriber.
Hey, XYZ. All right. Good to hear it.
Thank you. Hope you'll learn. I hope you'll learn a lot. I hope you will. Oh, Torva. Hey, Torva.
I want to [music] start Malbogle. I want to start Malog. I want to do that. Now, before I do that, is that still a good idea? Malbulg. It's called Melbour, right? I would like to start that maybe tomorrow. Maybe tomorrow. What do you think? Hey, thank you Bear Bear for the Silver Star Fant.
All right. You're welcome. Absolutely.
Wait, unless No, you're talking to Torva. You're talking to Torva. Sorry about that. In that case, oh, what are we doing today? So, thank you for asking, Kitten 91. We're going to be adding the CDN for our video here. Uh, why are you interested in Malbul?
because Torvo recommended it. I'm not really interested in it at all. I'm not.
[laughter] I'm not. Uh, bro, are you a millionaire? Oh, hey, lunch punch man.
Thank you for asking. Good questions.
Uh, those are typically what you call like doxing style questions. You're not supposed to ask those. You're not supposed to ask that. Is not a good idea if you're trying to productive uh for exploring, I guess. Is it? Either way, you need to manually do stuff due to context restraints. Yeah, it's fair.
That's torture language. It is a torture language, right? And if Torva says it's still a good idea. So I need Torva to say, "Yes, Steven, do Malbulk because Torva said that we should do it." 12 Batman, right? Bruce Wayne. Batman.
Steven, it took people 27 years to do Hello World. Are you serious? Wait. No way. No way. Uh, okay. Well, maybe we'll try it tomorrow and see how it goes.
[laughter] What? Do you think I think there might be like a tutorial or something we could do that? All right, let's see. Let's see if we can get our our our window back up in here. Uvoin start. Looks good to me. Okay, so now we need to upload this. So, let's do the upload. So, we can do an upload CDN.
We'll grab that on our main file. Let's close that. Undo. Undo. Redo. Redo.
Yeah. Okay. So, we'll save that and then we're going to open up the main. No, I need the main file, please. Backend main. Upload.
Upload it. There we go. Uh, let's see. I root my OnePlus phone. Oh, wa. Hey, Crafty. Hey, look what I have here. I don't know if you could see that. See, right there. OnePlus. OnePlus right there, Crafty. We we we've got the good answers. Hey Adam, good to see you.
Welcome on in. Happy Monday. Good to have you here.
Is PubNub a inf uh ice? Yes, it is an infrastructure company. Yes. Support regional pricing. Uh also server locations. Yes. So we're global. We're global automatic. You get all servers globally automatically. So yes, you get a regional and you get all the other regions globally. It's automatic. It's automatic. YouTube disliked the video.
Oh no, that's terrible. Hey, Adam, thank you for the flower. Appreciate it. All right. Oh, good to have you here. My gratitudes to you, Adam. The flower.
That was very nice. Thank you very much.
Hey, John. How's it going? John, sir, Adam, thank you again for the flower.
Wow, that's great. You guys, do you like a whole course in YouTube with edit un wanted parts? Yes. Yes, we do. Yeah. So on the So you go over to YouTube and then you'll see a bunch of videos a bunch of video here videos. Here we go. Perfect. Yeah. So uh what I do is I upload the videos and then they are edited versions of the stream and they cover just the content that we discussed in the stream and it kind of like removes kind of like the chat like we're chess chatting right now. It it will remove all that part.
You want to port uh port forwarding long time back me again. Crafty, crafty, what are you saying?
What is the future of software development in the AI era of six years of software development experience? What does the job look like for your experience? Uh how should you stay adapt? So you'll be using these new tools called code generators, right? The AI code generators, large language models, and agentic hardnesses to write the code for you. You still need to make a lot of decisions as an engineer, right? You need to be able to decide what's the database going to be? What's the [music] real-time communication bus going to be? Are you going to use PubNub? Yes. Yeah. You're gonna use PubNub or are you gonna, you know, are you gonna use something else? Uh, what language are you going to use? What frameworks do you want to use? Right?
Are you going to use React? Are you going to use spelt? Are you going to use Vue? Are you going to use, you know, Swift or Cotlin multiplatform? [music] Are you going to do Unity? Are you going to do Unreal? Like, you got so many options, right? Have you tried making a se second thought clone? I have. Yes, I have made an AI that automatically mimics me. It mimics me.
Uh, yes. Yes. Yes. All right. Which is why I said twoletter, not print, but two letters as the 100k sub special. Oh.
Oh, Torva. Okay. So, you're thinking that we should wait for Malog is what you're saying.
How do you like live streaming? Oh, Adam, I do. How do you like live stream?
I like streaming. Yeah, thank you for asking. Yeah, absolutely. I like it.
Blum clip. There we go. Let's do Blum clip here. Overview. All right. All right. So, we did it. Here we go. Blum clip there. Right there. Right there.
Just start. Hey, quick fix. Welcome back. How do Adam? Adam, thank you. How do you like streaming? I like streaming.
Uh, hey Kit 91K, you're saying over there? Uh, so you're making API for your videos only or will it get edge server balancers? Yeah, so we're adding the CDN part of it. We're going to add so the edge servers, right? For the file hosting that's the plan for today.
What's the theme? What do you mean?
What's the theme? For example, this will this just hello world not print script just words hello world. Oh my goodness.
Oh my goodness. Are you serious? All right, Torva. Maybe we shouldn't do Mal Buckle. [laughter] Maybe we shouldn't. I don't know. I don't know. That looks scary. It looks scary, right? Groo box. Oh, hey, Torva.
Thank you. The theme. All right. I was curious about that. Yes, Torva. Thank you. Tova answered you. XYZ. The theme is XYZ is groove box.
Hey, what's popping? ClinkerPlays. Good to see you. Welcome on in. Happy Monday.
So, yes, kit 91k, we are building the API and then we're adding in the the what do you call it? M. Here we go. We need to do the So, do we want to save it or do we want to upload? We're doing the CDN today. We're doing the CDN.
Let's bring it back over here. So, videos. So, I believe Let's try to see if we can upload it. Let's see if that'll work. Yeah, I believe it's the same. It's the same as this. Exactly the same as that. So, we should be able to just copy and paste this here. Upload CDN. Right. We'll hide that for now. All right. Let's see what that does. All right. We're going to we're going to see if it works, you guys. Here we go.
Moment of truth. Moment of truth.
Thanks, mate. Absolutely. Yeah. Hey, Derek. Good to see you. Welcome on in.
All right, you guys. It's so good to have you here. If I miss your chat message, just let me know. Just let me know. Sometimes I I miss your chat message and I didn't see it or I didn't answer your question sometimes. What's this application? This is a see overview. This is sort of sort of like a YouTube a video app. We built the server. We've got the database. We've got the the API. We've got the upload and we've got the listing of of videos and we've got the downloading and streaming of videos. So, we basically have the MVP. Now, we're going to optimize it a little bit by adding a CDN to it. And this might be the sort of last day that we're working on this. Hey Tova, in that case at Torva at Torva, what should our next stream topic be?
Ah, it's a good question to Torva. Hey, what's going there?
Hey, I'm Pragna. Welcome on in. That's great. Wait, what is that's Wait. Oh, sorry. I I see you've been here for a while. You've been here. Sorry. I just didn't recognize your name because um Pragna is pretty unique. That's a pretty unique name. All right. Hey, hey, Zack Morzy, welcome on in. Thank you for saying hi. Good to have you here. Happy Monday.
All right, you guys. All right. So, we are building the CDN part of it. I think we just finished. Did we just finish with that part? Let's see if we can make it work. Let me think about it for a bit. Sounds good, Torva. Sounds good.
So, here's here's some ideas. So, I'm thinking uh I want to do rust candle. I want to do rust candle lib. Uh let's see. We could also do uh we could do more like I don't know uh torch [music] torch lib stuff. More like other AI thing. Oh, image like I want to do teach AI to draw images. Images. Uh AI draws images. Things like that.
[music] Haven't seen Lun in a while. Oh, Lun has been here. Lun has been here, Derek. Lun has definitely been here. Uh was here yesterday. [music] Rag application. Hey, good news. We have done that. We did it. We did the rag application. It's even still fresh. It's still fresh right here. Take a look here. [music] This is what we did right here. We built it. We built all of it. We built all this live on stream. 100% in Rust. We built all of it. Isn't that crazy? There we go. All of this right here. We built it. The only Oh, hey. How's it going there? My name is Tio. Uh, my name is Tito. Oh, hey. I My name is Tito. Good to see you. Dan, what are you using for voice to text? That's instant AF. Yes, it is. Right. It's pretty good. That's pretty good, right?
This is technology I wrote eight years ago. It's available for you for free.
Forever. Free forever. It's on GitHub if you want. It's on our Discord channel.
I'll send you a link here, a link share.
Where? Let's see here on Discord. Link share. There we go. Right there on link share available for you. One punch man.
Hey, good. Thank you for saying hi again. Good to have you here.
Only thing is beating your code is uh your energy. It is contagious. Oh, hey.
Thank you. Hey, a bridged tool. Thank you very much. All right. Good to hear it. Crazy, I know, right? It's what we've built. We've we've built it, you guys. We've been around. We've been around. Yeah. So, we did the rag. We've got We've got the uh the voice transcripts right here. [music] Discord.
Never heard of it. I'm all about YouTube. Hey, we love YouTube. There we go. I'm with you there. I'm on that side of the fence as well. Here we go. Here.
All right. Let's see if our CDN upload works. I'm suspicious. I think I'm going to need to go get an API key or something. Maybe. Might need to grab an API key, though. It's possible that the demo key has everything we need in it.
It might be possible. It just might be.
We're going to see if [music] it works or not. Here we go. All right. We're going to run this test.
Okay. Immediate error. [laughter] Oh, wait. Okay. Uh, where is that at? Uh oh. Oh, that doesn't exist. Yeah. No such file or YouTube D. Yes, of course.
Oh, I see. I see. Okay. Here we go. So, we should not attempt to stream it yet.
Here we go.
Test. There we go. All right. Invalid numeric literal line 9. We got an exception. Uh, it's not indefined. Oh, we can fix that. We could fix that.
Yeah, we can. Yes, we can. Here we go.
Let's go. Our reference. Yeah. All right. Do we have the Oh, wait. No. Ah, here we go. Here we go.
Are we using OS for something? Oh, we are for the these things. Okay, I don't worry about that. Don't need to worry about that. All right, here we go. Here we go.
All right. Uh, they're not lying. Your energy is truly contagious, Ren. A. All right. Good to hear it. Thank you very much. Appreciate it. Cheers, mate. Hey, thank you very much. Uh, so is it using AI under the hood? Yes. Yes, it is. Yes, absolut.
Yes. Yes, it is.
Got your ad. Oh, hey, One Punch Man. All right. What's the ad? What was the ad?
We're self-censoring, which is a wild psychological tactic, by the way. Wait, is it? Wait, is it really? Oh, address Washington. Yes, Washington. Yes, you got it. You got the right answer. You got it. One Punch Man. Washington is correct. No doxing. I know, right?
Please. No doxing.
Is it about to turn 12:00 a.m.? Oh, yeah. It's getting late over there. It's getting late. What's the text stack? All right. Gotcha. Overview. Very simple text stack here. Where are we? Where are we? So, [music] we are doing JavaScript, HTML, CSS, the front end. Our back end is uh Postgress. Let me see. Did I Here's Here we go. Here's the answer.
This is the answer right here. Python, fast API, u UV corn, Docker, and PostgresQL.
Postgress right there.
That's the text stack. Easy text stack right there. All right. So, let's see if we can fix our bug here.
I think we can do that. I think we can do that. Yep. Here we go. Perfect. Here we go. All right. Save. Reload.
Test.
Another error. Response name response not defined. We could fix that.
Response.
Did I type it wrong? No. No. Should be fine. Is it? Do we have Oh, um I see. Cuz it failed. Okay. So, we need to we need to do it finally. Fine.
Finally.
Wait. Uh oh. Well, do do we though? Oh, do we need to finally uh we need to say return success here? Otherwise, return error. Return false, I'd say. All right, we'll do that. Returning false right there. Is your background green screen?
It's a real background. It's really background. It's real. One Punch Man.
There you go. Little bit little bit of real, Parker. Absolutely. Happy to tell you the the details. Oh, wait. What's the text stack behind the live transparent?
Oh. Oh, the text gap behind the subtitles. Oh, yeah. All right. So, text to speech. Basically, just do this. Do npm spoken. Do the npm spoken library.
Here you go. NPM spoken. So, this is a library that lets you do voice to voice to text and text to voice. Text to speech, speech to text. That's what that is. A little bit of that right there. Do the spoken. All right. At Parker, the answer is uh 2971 spoken spoken npm. Just Google for that.
Google for that and that'll give you the answer. It's all the code examples right here. Oh, hey, look at that. It's suspiciously also eight years ago. Hm. I wonder why that is. Oh, wait. [laughter] I wonder who this is right here. Who did that? Who did that?
Algorithm personalized content based on specific words. No direct uh pushment.
What's a pushment? Is that a word? What is pushment? Pushment.
There's punishment, not a pushment. Uh user observed results. The psychology tactic. M uh personalized content based on specific words. Yes. Uh punishment.
Ah, got it. Okay. Hey, Cordy. How's it going? What are we doing today? We're adding a CDN for our video file AP app that we're building. We built a video file app. It actually works. You can see a quick little example right here. Sort of uh see if I can mute.
I can't. Okay. What I can do is I can just say mute this site. There we go.
So, I can play that right there. Yeah.
So this is a video player app. We have the server. We did the server, Python.
It's running Postgress and we've did fast API and u we've got Docker and now we're going to add a CDN for the video files right there. CDN for the video files. Hey, One Punch Man. Yeah, that's where I grew up. I grew up Well, I I mean I I lived there for a while. I lived in that area. You did the opposite for your stream. Text to voice. Hey, for the bot. Oh, I there you go. Nice. Nice.
Yeah, I want to add I I need to add more like fun interactive things in the stream. Hey, you've all, thank you for saying hi. Good to see you. Welcome on in. Happy Monday. Uh, good to Google it.
It's a it's real. Never mind. [laughter] It's pretty good. So, we've got we've got the um we've got the video player.
It actually works. It does all the things. It does everything. Check your message. Quickfix. Would you say coding space me is free? Okay. All right.
Sounds good. Nice.
Okay. Oh, what what what do you want to do? What do you want to do with it? What do you want to do with codingspace.mme?
That's my question for you. Okay.
All right. Hey, Snot. Good to see you.
Welcome on in. Happy Monday. Good to have you here. All right.
Name?
What? Uh, what about the name? Name?
What? Let's see if we can fix this, you guys. All right, so did we do this? All right, let's try to run the test again.
Fails. Response failed. Uh, but we saved it. We saved it. It's here. It's Oh.
Ooh. Oh, I see. Oh my goodness. I am so silly. Me and silly syntax here. Oh. Oh, but that was a little bit too fast.
Application starter error trying to publish not JSON serializable object.
object of type postix path is not serializable.
Oh, because it's a path. Well, here I'll show you how to do that. What you do is you type str and boom, right there. That does the trick. All right. Ooh. Hey, look at that. All right. That's what we want to see. Okay. So far so good. Will it give us an error saying too big? I don't know. We're going to find out. Here we go. Entity too large. All right.
Perfect. [laughter] That's progress. That's progress right there. Nice, Ebie. The domain name for this app. Oh, I got it. Got it. Got it.
Got it. Got it. Understood. Oh, Icy Box.
What are you saying over there? Yo, uh, if you search some ideas, here's my bot.
Oh, can I pull that up on stream? Can I show on stream? Question mark.
Uh, you study in the college Western Washington University. Yes. Yes. You must have read my [laughter] You must have read my LinkedIn.
You must have read some LinkedIn here, huh? Little bit of LinkedIn over here for you. I see you can do that. You got some LinkedIn going on there.
A little bit of LinkedIn, One Punch Man.
Oh. Uh, hi. I've been seeing your stream and enjoying it. Hey, great. Thank you.
Good to hear it and learning a lot. But I want to know how to make a road map like for software what is required and how do you how are each entity connected like system design things yes I see box okay nice okay we'll take a look here in a second my recommendation is build build an app build something challenging and then things start to become clear and then go a [music] step further and you can get ahead of everyone else if you release your app and Get [music] users. That part right there is the challenge. That is the challenge right there. User acquisition. If you do that, you will be successful beyond 99% of everyone else.
It's a public also your description of the channel. So, it's not secret. All right. Nice.
Nice. Make a game card game. Lots of systems thinking. Yes. Agreed. Agreed.
Yep. Yep. You pun Punch Man, you're reading my LinkedIn. You're reading the LinkedIn. All right. [laughter] Good job. Good job. All right. Let's take a look here. All right. I'm going to I'm going to do Icy Box. You ready?
Let's do this. Let's take a look. All right. What do we got? Let's do a star.
We'll give you a star. Always. You guys do the do the good the good deed and do a star on there. All right. What do we got? Ooh. Ba. Wait. Boda rat or RGA. Ba text to speech. Oh. Oh, nice. Wait, did you build this? I Isabuck, you did. Yo, a simple text to speech bot for Twitch.
It can read chat messages and convert them to voice. It can interact with Twitch chat and execute commands in from chat. So, it's a really good bot. Yo, no way. Nice. That's amazing.
This is great.
Task management, audio playback. Oh, really? Play, stop, manage audio streams. That's impressive. Interact with Twitch chat API. IRC parsing for the Twitch chat messages. Yep, you got to do that cuz Twitch is IRC, right? Is it free? It looks like it's open source.
Icy box. Is it free? It is free. Uh, [music] nice. Free as in real estate.
All right. Good to hear it. card game gives you the visualization, cause and effect loops, constraints, etc. Yes, it does. So, you just do a Oh, it's in Rust, you guys. Now, you know you're in good hands because it's in Rust, right?
Rust programming language. There we go.
A little bit of Rust right there. MIT.
There we go. Looking good. Ooh, I like this. I like this source. [music] We have a main file here. We do got a main file. Let's take a look. What do we got?
What do we got? A bunch of pub mods. Yo, this looks self-written. Looks like you actually wrote this by hand. Uh oh, you got a lot of boxes in here, which is fine. You can do boxes. You little Is that heap, right? That's heap. Heap memory. Little bit of heap memory there.
All right, let's zoom in on this. I like it. I like it. Ooh. Oh, you win. You win, Icy Box. This is the right way to do a main file right here. Look at that.
All right. So you guys pay attention what Icy Box has done here. What's happened here? This is the correct way to do the main file. It is your controller. The controller is just a bunch of you uh you know collect the model modules all the models and then execute the path based on the demand.
It's like the router. Think of it as a router. Yes. Async on heap for the async. Oh, Tokyo. Nice. Yep. Keep it on memory forever. Keep it in memory.
There's a websocket branch also. Hey, excellent. Very excellent. Nice. Icy Box. This is great. Think for the hearts, you guys. Look at this. All right. This is a very good repository.
If you're interested, I'm going to paste this over to our link share. You guys, if you're interested, this is a very good pattern. Go to link share here on Discord. Take a look at this. Is a very good example of good code. Of good code.
showed you guys. I'm interested in what's what's in common. You got some just common common stuff over here.
Config. Oh, config. Yeah. Okay. All right.
Uh let's see here. Dive debug at pubstruct. Nice. Broadcast [music] channel. Okay. So, some of these things like the lifetimes and stuff I typically like to avoid. I like to avoid those things.
These are things that I like to avoid.
Uh and then you've got some generics here. A little bit of generic going on here. So you can be successful without having to deal with generics or lifetimes which is I call it like a trap. So that's any recommendation I have on that side is trying to avoid those as possible. Like like this right here, right? Do you really? Do you really?
Yeah. No, you don't. And then also this right here, a reference [music] to a static. You could just put a string in here. Just a string. Although from a performance perspective, you don't always have to clone. It would be good just to do by reference. Yo, how's it going there? Salsing. Hey, thank you for subscribing. All right, you joined the right channel for software engineering.
We do a lot of coding by hand on this channel. We do right now we're building a YouTube app. We're uploading to the CDN. Yo, you already got some reactions there. Nice. Icy Box, check that. Look at this. This is clean. We are going to do a lot of things on this channel.
We're going to be learning some Haskell together. You guys want to learn some Haskell? Yep. We'll be learning some Haskell. We'll be learning some Erlang and Elixir. I think that would be a lot of fun, too. Uh, we could go and I want to do more AI stuff. That's my favorite.
That's my happy place when we do AI algorithms. I want to do more AI algorithms. Hey, how's it going there, Tugra? Good to see you. Welcome on in.
Happy Monday. Yes, but you need when you uh traits are shared between different threads. Um, yeah, yeah, yeah. That's fair. That's fair. Hey, Sergio. Good to see you. Need some C in there. A little bit of C. You think AC bucks?
Absolutely. I see. I see what you're doing. Also, you've done it in a way where it is going to be performant. It is. It's going to go really well. Just a coding design like architecture perspective. My my desire is to use message passing MPSC like Tokyo MPSC.
Tokyo MPSC is my favorite. And then oneshots with one shots for request response. That way then you can do multi-threaded async and have no concurrency problems or memory problems. Ew. Erling. What? No. Erling's great. Erlang. Erling. I love it. I love it. We were considering writing pubnub in Erling or C. It was either C or Erlang. Those were the one of the two.
I'm really glad that we did it in C because the performance that we needed with C was absolutely worthwhile. Hey, how's it going there, Rivun? Uh, or Varun. Hey, Varun. Good to see you.
Welcome on in. What's going on? We're building a YouTube app that it gives you some video streams here. Uh, video stuff. We need to consider that I'm just software enthusiast, not a software engineer. Oh, wa Icy Box. All right. So, you know what? You did really good. You did really, really good. That is a fantastic, fantastic code pattern that you've done there. I like it a lot.
Overall, the design looking good.
Looking good. Oh, right. The farmer has been replaced. Hey, maybe we should do some of that. You think so? All right, Torva in the evolution on a simple. All right, so Torva, if we were to do a poll for what we're going to do tomorrow, starting tomorrow, what what should it be? So, we've got uh farmer was replaced is one of the options. Assembly and inline assembly. Oh, there you go. Now you're getting So there are three ideas. Okay. So let's do let's do a poll on it. Okay. So I will let's do this real quick you guys.
Let's pull this in. Let's pull this in.
All right. So you said we could do the farmer has been replaced or a web uh web extension where you can transmit text to your other device. Oo for example Google review needs to be typed. Okay. Or we do an evolutionary AI that has a simple task. For example, a 2D platformer and the training gets distributed along an open instance [music] of the website.
Hey, there you go. So, just some hammering on things. Nice icy box. Very nice. I like it. Field programmable gate arrays. Do you use any hardware project like application specific uh something something a asich or FPGA?
Uh I have not ever done that before. I think it would be a lot of fun. I have done some uh microprocessor controller programming.
Okay, I like it. So let's do this you guys. Let's do this. So you said a little extension transmit text to other devices. Okay, start a poll. All right.
So, transmit text [music] to other devices.
We could do a farmer. Farmer was replaced. Or what was the other one? I forgot. [music] One second. Let me scroll here. Silicon Valley. Silicon chip. Yes. Exactly. Bob Paul. Exactly.
Exactly. What was the other one you said, Torva? Um, let's see here. Uh, 2D.
Oh, wait. AI that learns. AI learns.
So like this is like reinforcement learning kind of like reinforcement learning. AI learns platformer game something like that. Okay. These are all very challenging things. These are all very challenging things. I like it.
You're trying to love code in an app.
Cool. Yeah, we are. Absolutely. You know it.
You know it you guys. All right. AS6 Stephen. Uh, my robotic startup raised 1 million from a VC yesterday. Yo, Tubra, congratulations. Hey. All right.
>> Nicest guy on the internet.
>> Hey. All right, Dom. Thank you. Oh, Don Muggsley forever. Thank you. Appreciate it. Oh, that was very nice of you to do.
Oh, my gratitude to you at Don Mogsley.
Thank you. Exclamation point. Party popper. Let's do that real quick. A little bit of party popper there. Thank you. My gratitude to you. All right.
Thank you so much. Appreciate you. Oh, that's so nice. You wrote an assembly for Arc 64 identical to C++. WaN, that sounds like a a good exercise right there. Tuger, congratulations again.
That's a milestone. You did a good job there. What is Farmer was replaced? It's a game that you type Python code. You type Python code in order to beat the game. That's how you play the game. You write code in Python.
That's how you beat it. That's how you defeat the game. Oh, hey. Thank you for the poll. Oh, I didn't notice that you just did that. Thank you over there on the Twitch side of things. Inline [music] and in a lambda. Oo, yeah. I like my lambdas. Do you guys like lambdas?
They're my favorite way to program. I like me some lambdas. All right, so let's see if we can fix this. I've got 15 minutes to go and then I got to jump to my meeting on 15 minutes. That's plenty of time to fix this error right here on screen. Got to fix that error right there. What are some criticisms of vibe coding? Oh, toasted crumbs. Hey, criticisms.
You know what the it's really what you lose by vibe coding. You lose your ability to really remember how to code properly and you lose your ability to code like really well. So vi vibe coding produces, you know, general good code, good enough code for 99% of the use cases on the planet. So it's actually okay if you only vibe code going forward for the rest of your life. It's actually okay. It's completely fine, right?
Completely. Uh you living in San Francisco? Oh, One Punch Man. Nope. You you didn't go to my LinkedIn. My LinkedIn has that information. One Punch Man, you're behind. I used to live in San Francisco. I did. I moved.
You can't find docuation for OpenGL. Oh, OpenGL. Yeah, I I used that. I made some games with that back in the day.
All right. Farmer replaced on stream.
Yes, you farm crops and with crops you unlock more functions like if loops and unlock new crops and stuff. I really want to play that tova. I really do. I do. All right. Right now, the current winner is AI Learns platformer game, which does sound like a big challenge.
that does sound like a challenge. So, what we need to do is we need to define a game. We'll find a game. [music] It's going to play in the browser and then we need to figure out how to adjust that game so that way we can do input keystrokes. And then we need to be able to maybe accelerate the game to high speed so it can learn faster.
Okay, you guys, that sounds like a AI learns platformer game. Okay, that one's going to be right. All right. It's a good combination middle ground. on Torvvis's idea. You guys, Torvvis's idea. If you know how to code, you don't have to pay AI subscriptions. Oh, hey, lazy. That's a good point, right?
There's another good idea right there.
You don't need You don't need to pay code subscriptions.
Uh, is the error here max size problem?
Yes, because it rejects a file because it's bigger than Yes, Nina, it is. You got it right there. Yeah, entity too large. And the max size is So, here I'll show you. L video is uh 11 megabytes.
Yeah, here. LS LS RT ah video. Yeah, 11 megabytes here. Uh, L video. Yeah, as you can see right here, 11 megabytes and the maximum size is five. So, all we have to do is if we want to see if it works and succeeded at working, then we just have to change that. And we have 12 minutes. So, that's probably going to be the solution for now. That's going to be the solution. I think we're gonna do that. Go outside and play, Stephen. Oh, Shelton. Oh yeah, I like staying inside.
Inside is so much better. It's so much better, you guys.
What will happen once it learns? It will be able to play the game. It'll be able to play the game. We're considering using Pubnum for Swarm Robotics. Yo, Tugra, you should do that. Yo, hey, connect with me. Connect with me. Tugra at Tugra at Tugra. Uh uh are you on Discord?
uh ping me or on LinkedIn uh ping me and we should connect. We should connect and talk. We should connect and talk. Uh because I've had people do this before and I can give you like all the best practices and patterns that I've seen them be successful for it with. OpenG is the only way to write a game. It's good way to write a game. I like it. I like it. I miss I miss uh doing that. I did that back in college.
You guys include security and personal information. Toasted crumbs. That's a good point. There you go. You got to be careful with that, too. Security.
All right, you guys. All right. You can also do a combination of chatbot while you hand code. You can do both, right?
You can do both at the same time.
You said that you used to live in Washington near Kirkland. Yes, I did. I did. It's true. I used to. And I live somewhere else now.
Uh, yes. Accelerated. You can do maybe a training website itself. Since you're an evolutionary AI, we can train faster by transmitting the best version via PubNub. Oo, there you go. I love it. I love it, you guys. You guys got a good idea. All right, so we need an FFmpeg that's going to crop the video. Let's do this real quick. All right, Jiminy ffmpeg. Here we go. Let's do this. Let's do this. All right, real quick. All right, Google ffmpeg.
Uh uh uh uh. What is it? Trim video first five seconds. All right. Let's grab this real quick. Pull this in. SS5. Input.
Output. Copy. Okay. And then our input is going to be video. Video.
There we go. Vid. Hold on one second.
Delete. Delete. Delete. Delete video.
There we go. Output is going to be uh video. Short video short. All right, there we go. It is still 11 megabytes. Yo, what? Hold on.
No, no, no, no, no, no, no, no, no. All right, we'll do two seconds. Yes. All right, video short. It's still 11 megabytes. Yo, what? Hold on. His company is about 35, too. Wait. Uh, what do you mean 35? Unfortunately, Discord is banned in my country, but I'll log in using a VPN. Oh, sounds good. Okay. How does the service handle the video data?
Uh, actually pretty straightforward.
It's actually pretty straightforward.
Here, check this. Here's the post. Thank you for the R2, guys. Appreciate it. So, we upload the video data here. And our controller over here [music] is going to fetch the data via file upload that we get from fast API. Right? So, we're pulling in the from fast API. We're passing that as a parameter and then we are putting that over into the upload videos command which is going to copy the file to our hosting directory. So that's how that works. That's how that works near California. I used to live in California. I don't anymore.
Okay. Linear training. We can uh have layered training. Yeah. There we go.
There we go. Let's say AI is able to play a platformer game. Then what? We can put two AIs against each other. Yo, we could do that. Yeah, I didn't even think of that. That's a good idea.
Hey, I like it. You guys You guys are smart. Do you know how Source Engine works? The one used for Halflife games.
I When you said Source Engine, I immediately thought of HalfLife and Valve. I thought of HalfLife and Valve.
I don't know how it works specifically, but it may I think it's OpenGL is my thinking.
DM would be good video. How could AI uh how to code with AI? Full AI, no AI combination. Oh, yeah. Flip, Kyle. Yeah, that would actually be pretty smart. I like that. Can I leak your legal ads?
No, [laughter] One Punch Man. No, don't do that. Don't do it.
All right. Uh, let's see. One second.
Yo, nice. What is that? What is What is this?
All right. Oh, ghost capture. Oh, nice.
Nice. All right. Yeah. Uh, commit it.
Commit it to commit it if you can.
Commit to repo. Repo. All right. Commit it to the repo.
Okay. All right, you guys. I've got 6 minutes left. The capture. Yeah. How short duration of a game would you choose for the AI platformer tomorrow?
We need to figure it out. It's got to be something really lightweight. something that's really simple. Maybe even like the dinosaur running game, right? I think like if we could do something, we got to start out simple, right? Let's start out simple. So, dinosaur running game, right?
Dinosaur running game. Here we go. Yo, this one right here if you're familiar.
Good luck, givers, takers. Hey, how's it going? Good to see you. Hope you have a good day, too.
All right. uh the duration of game for a yeah something like this for tomorrow we'll do something like this all right you guys why is our video file not uh see ffmpeg we don't want to copy it how about we don't do copy um how about we say that can we do that no we'll do c we'll re rerender it yes all right redo right there is oh 6 megabytes now. Okay. So, let's bring it down to 1 second.
See if that works now. Right there.
Little bit of right there. FFmpeg metadata F Copy. Okay. Uh, it's still 6 megabytes. Oh, it's still too big.
It's still too big. All right. So, hey, Nina. Um, let's see. How do we how do we compress that further? So, what was that? There's there a different option that we can pass in [music] uh to like just make it compressed more, right? 5 seconds video compressed. Yes. Okay. So, let's add some compression to it. Let's add more heavy compression. All right.
Uh more compressed, smaller file. Let's grab that really quick, you guys. Love from San Francisco. Yo, hey, Slick. Good to see you. Welcome on in.
All right. CR codec. All right. Let's grab these guys here. We'll do that.
We'll do that. Okay. Because we're running low on time here.
Paste that in. Okay. Go. Nothing like that. Lib 64 CR code asb.
Uh, okay. Let's just copy the whole thing here. I'll copy this and then [music] redo that here because the order is important, right?
So, let's see here. video short and then the input is videos.
Video. There we go. Okay. All right. All right. Let's see if we can make this work, you guys. Uh 4 minutes left. We got 4 minutes.
I think we're going to make it work.
We're going to make it work. The best one. It's the Dino T-Rex one. Yeah, Nina. Exactly.
Hey, there we go. 3 megabytes. Perfect.
Test. Can we make this work? It should show green. I want to show I want to show green. It's got to show green. Uh we'll call this the video file here. So say uh file equals uh we'll put this in. Yeah, [music] that's fine. Video short.mpp4.
Go this to file.
Go file. Put it inside of the brackets. Oh, got to put this inside those quote marks. Okay. Test. Here we go. All right. You think it's going to work, you guys? You think it's going to work? So far so good. Yo, it did it. Success.
We did it, guys. All right, we did it.
Three megabytes. Ye. We did it. We did it. Hey, Fod. Good to see you. What's up, Mr. Blunt? Hey, Ro uh Robot. Robot Block. Yo, Robot Block. Good to see you.
All right, we've got a plan, you guys.
All right, perfect. We did it right before we had to leave. [laughter] There we go. Hey, how's going there, Hesh? Hessam Zero Hessam, good to see you. Welcome on in, Mr. Steven. Thank you. What did we do? We got the video to upload to the CDN. That's what we did.
We got it to upload to the CDN. We did it. We did it. All right. All right. I like to see it. I like to see it here. I would also like to upload. Let's see. I want to see more data. Let me see how we do the video data. I want to echo the video data [music] as well. Let's do that data. There we go. Let's copy that.
And we will re-upload that. So now that's on the CDN, we can, you know, do other things. Look at that right there.
Right there, you guys. Perfect.
Looks good to me. Okay, let me Yep.
PubNub. Exactly. PubNub is the answer.
CDN. Uh, technically it's CloudFront.
CloudFront. Cloudfront from AWS Amazon Web Services.
There you go. Get status. All right. Get add dot get status again. Looks good.
Back in reference requirements text.
Okay. Get commit am successful upload video to CDN. Boom. Party poppers.
Check. Oh, we got to pull. Pull. Okay, let's see what changed. Get log stat.
All right. What changed over here? Uh, check out your DM real quick. All right.
real quick because I got to I we got to wrap up here you guys. Oh, I did already. I did. You you did capture the capture. Yeah, the capture stuff. Yep, I saw I saw I saw it. Can we edit and push code to the repo? Yes. Yes, indeed, Nina. Absolutely. I'll share the link here really quick for you guys. All right, real quick here. YouTube app over on our link share. Tugra, if you're still there, link share. Here we go.
right there. YouTube app. Uh, you know what? We've already we already posted it there. So, I'm going to I'm just going to delete [music] that. So, you could get it. You You'll see it. You'll see it. It's just scroll up a bit right here. It's right here. I'll also share over there on the uh Twitch side for you. Run. I know, right? Hey, I'm here.
Tugra. All right. Good. So, yeah, Tugra, definitely connect with me on Discord if you if we want. We can chat. If there's any ideas we could talk about other fun things, scaling, infrastructure, architecture, communication design patterns, uh channel topology, there's a whole bunch of fun things to talk about there. So, let me know if you are interested and we could talk more. Uh also connect with me on LinkedIn if you are able.
Check my capture live, please. I do you mean the um the source code? I did. I looked at it. I saw it.
Oh, you want me to open up the app directly? So, I was looking at the code.
I was looking at the code. Uh, and it looks like we have to do extra stuff here. Um, no, the server run it. Uh, I don't have time. I have I'm late for my meeting. I'm literally out of time. Um, at 9:30, that's when the meeting starts, you guys. I got to get going. All right, you guys. Thank you so much for hanging out with me. No, why? I know it's too late. It's got to go. All right. Love the edit video chunk composer even though it's wrong size in a chunk split before stream. Yeah, have a nice day you guys. Thank you so much for joining. I had a lot of fun. Follow it on GitHub.
Hey, robot. Thank you. All right, you guys. Have a good rest of your day.
We'll be back tomorrow a little bit earlier because we have a lot of meetings throughout the rest of the week. So, Tuesday to Thursday, we will be live at 7:30 a.m. instead of the usual 8:30. So, an hour earlier. All right, you guys. Thank you for joining.
Tomorrow we're going to start something new and it looks like we're gonna have start the AI learns a platformer game.
That's going to be a lot of fun. Send me the private key. All right, tell me about it on Discord. I have to jump now.
You guys have a great day, Stephen.
Thank you, Evie. All right, guys. Have a good rest of your day. See you tomorrow.
Bye, everybody.
Related Videos

TOP 15 Data compression Interview Questions and Answers 2019 Part-2 | Data compression | Wisdom jobs
wisdomjobs
281 views•2019-06-28

CTS 158: 802.11w Management Frame Protection
ClearToSend
4K views•2019-02-04

NDSS 2019 Send Hardest Problems My Way: Probabilistic Path Prioritization for Hybrid Fuzzing
NDSSSymposium
496 views•2019-04-02

How realistic is Cities: Skylines?
CityBeautiful
159K views•2019-02-14

GUIs & TUIs: Choosing a User Interface for Your Python Project | Real Python Podcast
realpython
2K views•2025-04-04

The OSI Model - Explained by Example
hnasr
225K views•2019-05-12

Cloud Computing - Introduction
elithecomputerguy
98K views•2019-10-07

From Traveler's Dilemma to Dynamic Routing | Demystifying Networking
IITBombayJuly
5K views•2019-08-04
Trending

One Must Imagine Sisyphus Happy
vlogbrothers
61K views•2026-07-21

Future of Taylor Farms
maighstirtarot5385
11K views•2026-07-21

The Downfall of OnePlus!
techwiser
65K views•2026-07-21

My Friend Locked Up The Engine On His K-Swapped Bug...
boostedboiz
128K views•2026-07-21