Hey Chris I want to say thanks for this. Please can you consider more Rust-related content as the content for Rust learning is very less and Rust will be huge in the future. And so far I only came across the @let's get Rusty (which is really good) youtube channel for learning. I think you know Rust good enough for Rust topics and project videos
heyyy, glad you like. i am planning to do more rust content on the channel this year. you'll have seen 2 rust vids already now this year (and 2 from last year). so there will definitely be a lot more than last year.
Great video! Finally, something that lets me relate to my C/C++ and Python exp without making me dive into gazillion async tokio functions that are wrappers around basic networking/io stuff! Thanks!
Thanks. I coded along, and learned a lot. I'd definitely watch more like this. I haven't found many Rust tutorials at this level; they're normally either quite basic or hardcore. This is a good bridge. Also, from NZ and TIL Sirocco.
Thank you so much, great video, I'm a beginner and I love how you explain everything that's happening. Can't wait to go through more of your content, would love to see more videos of the Tokio stack like Axum. Thank you!
Nicely done on the transformation of a std library to a tokio implementation, however you could achieve exactly the same using threads: // loop through incoming connections for stream in listener.incoming() { let handle = thread::spawn(move || { let stream = stream.unwrap(); handle_connection(stream, delay); }); handles.push(handle); // handle connection } for handle in handles { handle.join().unwrap(); } Tokio is the idea of creating lots of non blocking simultaneous tasks that can share a much smaller thread pool.
Sooooo, what we gonna do now is ..., then i'm gonna do ... Then I'm gonna ..., so what I'm gonna do here is ... and the next we need gonna do is ..., so what I'm gonna do now I'm gonna ... because we gonna do ... I just gonna do... is gonna be ... coz what I'm gonna do is gonna... Dude. Seriously. You have great topics, skills and videos, but that narrative... I hit thumbs up because that's what I'm gonna do anyways.
great material sir! your video format is most excellent, always like following these longer in-depth ones for unfamiliar stuff! side note dude we are streaming this at 1080p, you can minimize the zoom in the vids -- you're displaying your text at like 480p and cutting off your lines is obnoxious af.
Good video but there is one thing to correct, I think. At 13:37, what you describe as "connected to echo server" is not echo server and port. High port number has nothing to do with fork. It is local (client side) socket, source side of the connection. Server is always running on port 1234 and no fork can change that. You are forking executing command, but not the server itself. Client side, outgoing connections, typically have high port numbers 49k+. Pls, correct me if I'm wrong.
Next time, I highly recommend closing the file explorer on the left hand side of your screen while recording. I had difficulty reading the entire line of code on several occassions.
Hey nice content! I was digging into some rust projects related to RabbitMQ, but none of them have good docs. On top of being unfinished (mostly abandoned) projects. So, would it be possible for you to do a video on how to connect to rabbitMQ, create a channel, queues and subscribe consumers? Using tokio :)
@@chrishayuk yep hahaha. Am developing a discord bot, so still ended up using tokio. Tokio is not even the most difficult thing tbh when creating a discord bot. Its more about poor documentation / outdated info. Discord is moving towards slash commands for bots, although prefix commands will still exist for approved bots, unfortunately there is almost no documentation for Rust on how to do this except for the Poise crate.
Thanks for the great content, Chris. Starting watching this while going through the tokio tutorial in order to understand the blog post: "Combining Axum, Hyper, Tonic, and Tower for hybrid web/gRPC apps". It would be great to get your perspective on axum in a future video. Cheers.
nice video ! may I ask the nice vscode extension you have that complete the variable type and show the named argument for function ? (also if possible the extension that underline the text with warnings)
Hi! You maybe have had an answer since then but for the sake of answering, this is rust-analyzer. This is a must-have when writing Rust, it just makes it so nicer.
RUclips needs more project based rust videos
I think your channel is really GREAT for Rust learners like me. Thank you.
Glad to hear it!
I found this today and it is still relevant. Thank you for making this video!
This is one of the best Rust video out there. Thank you for the effort that went into this. 👍
very kind. i'm glad you like, it's a video i really struggled with (especially on the length and complexity), glad it worked out
Hey Chris I want to say thanks for this. Please can you consider more Rust-related content as the content for Rust learning is very less and Rust will be huge in the future. And so far I only came across the @let's get Rusty (which is really good) youtube channel for learning. I think you know Rust good enough for Rust topics and project videos
heyyy, glad you like. i am planning to do more rust content on the channel this year. you'll have seen 2 rust vids already now this year (and 2 from last year). so there will definitely be a lot more than last year.
Great video! Finally, something that lets me relate to my C/C++ and Python exp without making me dive into gazillion async tokio functions that are wrappers around basic networking/io stuff! Thanks!
Glad you liked. It was definitely a hard video to do, and got complicated towards then end
I really like, idea of code in front and you in background, it looks really nice in video
I’m glad you like, it’s became a bit of my style now
Thanks. I coded along, and learned a lot. I'd definitely watch more like this. I haven't found many Rust tutorials at this level; they're normally either quite basic or hardcore. This is a good bridge.
Also, from NZ and TIL Sirocco.
Glad it was useful and hi
Well put. Not too hardcore, not too basic.
Extremely helpful tutorial, Chris. Thanks for taking your time to do this.
glad it was useful. i'm always pleased when i see comments on this tutorial :) , was a tough one to build
Excellent and crystal clear explanation. Thanks sir
Glad it was useful, it was a particular difficult video to try and strike the balance with
Thank you so much, great video, I'm a beginner and I love how you explain everything that's happening. Can't wait to go through more of your content, would love to see more videos of the Tokio stack like Axum. Thank you!
Glad it was useful. I keep meaning to do Axum
I'm really learning a lot from your excellent instruction. Thank you!
You're very welcome!, glad it’s useful
Nicely done on the transformation of a std library to a tokio implementation, however you could achieve exactly the same using threads:
// loop through incoming connections
for stream in listener.incoming() {
let handle = thread::spawn(move || {
let stream = stream.unwrap();
handle_connection(stream, delay);
});
handles.push(handle);
// handle connection
}
for handle in handles {
handle.join().unwrap();
}
Tokio is the idea of creating lots of non blocking simultaneous tasks that can share a much smaller thread pool.
I wish my lecturers at university were like you. Thanks for the detailed explanation.
Thank you, glad it’s useful
more tokio and actix tut would be awesome, as there isn't any good ones around, but yeah nice job!
i was meaning to do more on those topics. will come
@@chrishayuk nice looking forward, yeah tokio is really nice, but documentation isn't the best around to follow
Excellent video! Hi Chris. Tqvm indeed!
Glad you enjoyed it!
Sooooo,
what we gonna do now is ..., then i'm gonna do ... Then I'm gonna ..., so what I'm gonna do here is ... and the next we need gonna do is ..., so what I'm gonna do now I'm gonna ... because we gonna do ... I just gonna do... is gonna be ... coz what I'm gonna do is gonna...
Dude. Seriously. You have great topics, skills and videos, but that narrative...
I hit thumbs up because that's what I'm gonna do anyways.
Lol, fair play. We all have development to do, to improve. Feedback is appreciated
I absolutely LOVE your channel! Thank you for your amazing work.
@@kodedart2311 thank you, i hope i can keep improving though
"Constructive criticism"
love your video. great quality. please keep releasing new ones
Thank you. The tokio video is a little ambitious. I always wonder if it was too complicated sometimes
great material sir! your video format is most excellent, always like following these longer in-depth ones for unfamiliar stuff!
side note dude we are streaming this at 1080p, you can minimize the zoom in the vids -- you're displaying your text at like 480p and cutting off your lines is obnoxious af.
Watching this on my phone, I do appreciate the larger font size.
:: is not turbofish.
Good video but there is one thing to correct, I think. At 13:37, what you describe as "connected to echo server" is not echo server and port. High port number has nothing to do with fork. It is local (client side) socket, source side of the connection. Server is always running on port 1234 and no fork can change that. You are forking executing command, but not the server itself. Client side, outgoing connections, typically have high port numbers 49k+. Pls, correct me if I'm wrong.
Next time, I highly recommend closing the file explorer on the left hand side of your screen while recording.
I had difficulty reading the entire line of code on several occassions.
Ah yeah, I try and remember to do that but often forget, apologies
Awesome contetn. Thank you!
Glad you liked it!
Hey nice content! I was digging into some rust projects related to RabbitMQ, but none of them have good docs. On top of being unfinished (mostly abandoned) projects. So, would it be possible for you to do a video on how to connect to rabbitMQ, create a channel, queues and subscribe consumers? Using tokio :)
I am very much a beginnner, so this is a bit too much for now:)
But saved the video to come to it later.
Yeah this one is a little advanced of a use case
@@chrishayuk yep hahaha.
Am developing a discord bot, so still ended up using tokio. Tokio is not even the most difficult thing tbh when creating a discord bot.
Its more about poor documentation / outdated info. Discord is moving towards slash commands for bots, although prefix commands will still exist for approved bots, unfortunately there is almost no documentation for Rust on how to do this except for the Poise crate.
@Chris Hay I'm looking to build multiple concurrent servers on different ports with Rust and Tokio (Websocket and TlsStream). How to do it?
Great video
thank you
Thanks for the video
No problem!
Thanks for the great content, Chris. Starting watching this while going through the tokio tutorial in order to understand the blog post: "Combining Axum, Hyper, Tonic, and Tower for hybrid web/gRPC apps". It would be great to get your perspective on axum in a future video. Cheers.
It’s coming
nice video ! may I ask the nice vscode extension you have that complete the variable type and show the named argument for function ? (also if possible the extension that underline the text with warnings)
Hi! You maybe have had an answer since then but for the sake of answering, this is rust-analyzer. This is a must-have when writing Rust, it just makes it so nicer.
I love this video. Would love to see a UDP version.
THis is cool right up until you bring in karin. After that the application flow is a bit of a mess and it gets a lot harder to follow.
i agree.. i never felt i got it quite right, it got quite complicated quite quickly at that point
Cool accent.
i have no idea what my accent is anymore looool