@@letsgetrusty I agree, love reading a chapter and following up with your videos, super helpful honestly, especially when trying to consume such complex knowledge.
3:07 Another difference between `let` variables and `const` "values is, that you cannot shadow constant variables/values (or am I wrong here?). That gives an additional security that you don't accidentally redefine its value.
@@letsgetrusty I want to add another note. Sometimes initialize the variable with `let mut new` and then later redefine it as `let changed = new`. - The name change has the benefit of making it clear in the document we are using a changed state of the initialized variable. Just a little bit more readable at times. - But most importantly the mutability changes. Now the best part of it: If the variable/struct or whatever object it is does not implement the copy trait, then no new space is allocated. The ownership is just transferred and the benefits like changing mutability comes for free.
now, 2 years later, your dream of 100000 subs almost came true....great job!!!!!!! I love your videos!! would be nice to now how many subs you had when you published this video :-)
This is awesome, I'm non-native-english person, so reading the book and having somebody explaining some things in voice is a really good support. Keep it up man! Great job!
Watching this and seeing you smile when you say "we can all dream" after setting Subscriber count to 100,000 and looking at your subscriber count sitting at 93.5k gets me so stoked for you! You'll be getting there in no time Bogdan! Keep up the amazing content, watching through this playlist has taught me so much. Thanks for teaching everything so clearly!! Cheers :D
Thank God the if statement only looks for boolean. In Ruby the if statement can be boolean, numeric, nil and I have seen crazy codes in the if statement where a function is used and the function can return any 3 variations of bool, numeric, or nil. It makes it extremely difficult to read the code and convoluted. I love how in Rust it is explicit boolean.
Keep popping out quality tuts and you'll reach 100,000 subscribers for sure! Thanks for the great tuts. One thing I was wondering tho, would it be possible to add chapter numbers the the vid titles?
I've been doing rust in non professional setup for a while and I watched advanced videos of LGR and learned a lot of stuff I didn't know about traits/smart pointers/error handling. I said "surely I won't learn anything from basic control flow video here" - and I learned that break from loop can actually return... So far, I keep finding gems in every video, no matter how basic.
Very nice video of nice playlist, bro you can think of this as your investment coz as rust finds more popularity you will surely get noticed. Cheers !!
Short Summary for [Common Programming Concepts in Rust](ua-cam.com/video/2V0JaMVjzws/v-deo.html) by [Merlin](merlin.foyer.work/) Title: Understanding Basic Programming Concepts in Rust [00:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=2) Chapter three covers basic programming concepts in Rust [01:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=110) Constants in Rust have key differences from variables [03:38](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=218) Scalar data types and integer overflow in Rust [05:29](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=329) Rust supports floating point numbers, booleans, and character types. [07:13](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=433) Using vectors and array indexing in Rust [09:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=542) Returning values from a function in Rust [10:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=650) Different types of loops in Rust [12:44](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=764) Use 'for' loop to iterate over arrays and ranges --------------------------------- Detailed Summary for [Common Programming Concepts in Rust](ua-cam.com/video/2V0JaMVjzws/v-deo.html) by [Merlin](merlin.foyer.work/) Title: Understanding Basic Programming Concepts in Rust [00:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=2) Chapter three covers basic programming concepts in Rust - Variables in Rust are immutable by default, to make them mutable, use 'mut' keyword after the let keyword. - Rust also has the concept of constant values, which are created using the const keyword. [01:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=110) Constants in Rust have key differences from variables - Constants cannot be mutated and must be type annotated - Constants can only be set to constant expressions and have more readable numeric literals [03:38](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=218) Scalar data types and integer overflow in Rust - Scalar data types in Rust include integers, floating point numbers, booleans, and characters. - Integer overflow results in two's complement wrapping, with values greater than the maximum wrapping around back to the minimum value. [05:29](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=329) Rust supports floating point numbers, booleans, and character types. - Floating point numbers are numbers with decimal points and have default precision of 64 bits. - Booleans represent true or false values, and character types represent Unicode characters. [07:13](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=433) Using vectors and array indexing in Rust - Accessing individual values within an array using standard bracket syntax - Rust prevents out of bounds exceptions and memory unsafe behaviors by knowing the size of the array [09:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=542) Returning values from a function in Rust - Rust allows returning values from a function using the return statement. The return type can be specified after the parentheses by using a dash and an arrow, followed by the desired return type. - Inside a function, the last expression is implicitly returned. An example is shown where the return keyword is removed, and the semicolon is omitted for the last expression. [10:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=650) Different types of loops in Rust - The basic loop created using the loop keyword executes the code until the break statement is called. It can also return values from the loop. - The classic while loop executes as long as a certain condition is true, and the for loop is useful for looping through a collection. [12:44](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=764) Use 'for' loop to iterate over arrays and ranges - Iterating over arrays using the 'for' loop and printing each element. - Using the 'for' loop to iterate over a range of numbers and printing them.
Well I don't know how to say it but thanks for existing and making this series I was looking for it I hope I'll see some real rust projects on channel too that'll be helpful
a question: when looping through an array, what's the difference between `for el in a.iter()` and `for el in a`, because both works and in the Rust book (as of July 2022) it uses the `for el in a` version, without mentioning the `iter()` function
i really appreciate you taking the book and converting it into video format, i have a hard time keeping focus when reading programming books and much better learned when i can "hear" & "see" something rather than "read" it. a bit ironic given programming is all about reading and writing code, but 🤷♂️
Weird to come from JS, I tend to think about tuples as a convention for arrays instead of a different kind of data type. Also arrays with variable length and fixed length arrays as different is also weird.
Hi I'm coming from python, It's kinda weird that at 12:00 you have to "return" or in your case "break counter" to return the counter assigned to a new variable "result" couldn't you just break, and println!("The result is {}", counter) Seems like overkill.
if you're reassigning an immutable variable and even changing its type through "shadowing", then how is it still immutable? I can see if you were doing shadowing inside of a function but we're able to redefine the top line declarations. Confused because it doesn't seem like strict typing and potentially not memory safe.
what extension are you using in vs code for rust using that you getting full details of the each datatypes and its features, just like for html css MDN reffrence is recommend when hovered would be helpfull if you tell me please
Getting pretty close to 100k subscribers :D +1 to everyone's previous comments. It's been super easy to follow these tutorials along with reading the book.
Guys, I rarely read books and have web dev background, I think the rust programming book is pretty good. Definitely these videos are also a great resource.
No one in the comment section talked about shadowing being bad. I work in legacy c code and the codebase is very big with thousands of line in a function. It makes me anxious about the number of bugs that shadowing of variables can create allowed in the same scope.
Really liking these videos, i hav ethe book but sometimes after coding all day at work i cant focus as much so just following along with the videos helps and once i start i get into it again. Thank you
I’m watching it just as a hobby as it’s being so easily perceived. I really enjoy the format, how compact and at the same time comprehensive the videos are! High five for the efforts ! … ps The hell with that, this is probably gonna be an unusual comment but I also enjoy your background !
in shadowing, how we can use the first variable, for example - let x =5; let x =9; println!("x = {}", x); this is always print 9, but how we can use the first 'x' now??
I've watched so much of this series, and loved every minute. Then I heard you pronounce tuple, and it was so jarring and I instantly forgot everything I've watched. I'm sad that you're part of an enemy faction. I don't even want to know where you stand on tabs v spaces. I don't know if I could stand to hear the answer.
Why does "Let's Get Rusty" have to be typed, of all things, as &str. Literally useful for nothing. How many other string types does rust have now? Ridiculous. So many problems.
📝 Get your *FREE Rust cheat sheet* : www.letsgetrusty.com/cheatsheet
I guess I am kinda off topic but do anyone know a good site to watch new tv shows online ?
@Braylon Dominick Flixportal :)
@Kane Karter Thank you, signed up and it seems like they got a lot of movies there :) Appreciate it !!
@Braylon Dominick you are welcome xD
just when you set subscriber count to 100k and said we can all dream, looking at the actual count rn, your dream came through :)
I've just looked in the comments to see if someone's already commented this
People might criticize following the book, but it's really helpful to have this in video/audio format to reinforce the lessons
Agree, also Bohdan has very good implementation
So much more approachable than the book on its own. Def appreciate your content.
Thank you Raul!
@@letsgetrusty I agree, love reading a chapter and following up with your videos, super helpful honestly, especially when trying to consume such complex knowledge.
Sweet. Working through the book now.
Best rust tutorial I’ve ever seen. Period!
3:07 Another difference between `let` variables and `const` "values is, that you cannot shadow constant variables/values (or am I wrong here?). That gives an additional security that you don't accidentally redefine its value.
That's right!
@@letsgetrusty I want to add another note. Sometimes initialize the variable with `let mut new` and then later redefine it as `let changed = new`.
- The name change has the benefit of making it clear in the document we are using a changed state of the initialized variable. Just a little bit more readable at times.
- But most importantly the mutability changes.
Now the best part of it: If the variable/struct or whatever object it is does not implement the copy trait, then no new space is allocated. The ownership is just transferred and the benefits like changing mutability comes for free.
Well constants don’t exist past compilation
now, 2 years later, your dream of 100000 subs almost came true....great job!!!!!!! I love your videos!! would be nice to now how many subs you had when you published this video :-)
115k now
This is awesome, I'm non-native-english person, so reading the book and having somebody explaining some things in voice is a really good support. Keep it up man! Great job!
Watching this and seeing you smile when you say "we can all dream" after setting Subscriber count to 100,000 and looking at your subscriber count sitting at 93.5k gets me so stoked for you! You'll be getting there in no time Bogdan! Keep up the amazing content, watching through this playlist has taught me so much. Thanks for teaching everything so clearly!! Cheers :D
freaking unreal level of teaching abilities. I am honestly speechless by how easy it is to understand your way of speaking / teaching lol
Thank God the if statement only looks for boolean. In Ruby the if statement can be boolean, numeric, nil and I have seen crazy codes in the if statement where a function is used and the function can return any 3 variations of bool, numeric, or nil. It makes it extremely difficult to read the code and convoluted. I love how in Rust it is explicit boolean.
Amazing! No nonsense. Covered all the basics in one short video. Excellent video.
Keep popping out quality tuts and you'll reach 100,000 subscribers for sure! Thanks for the great tuts. One thing I was wondering tho, would it be possible to add chapter numbers the the vid titles?
I will consider this. Thanks for the feedback!
Man just hit 100k subs. WILD!!
"100k subs. We can all dream." Well, you are getting close to it, bud. Thanks for the series!
Thank you very much. Your content is great.
It is much more fun to watch videos than to just read the book
I love this video. Amazing way to lay a strong foundation. Thanks a lot ❤
Hit with the question just after I asked it in my head, subbed
Great videos, really good pace and full of useful extra information.
Now you have more subscribers than you've dreamed of :)
Quick tip on for loops over ranges at 13:25. If your use case requires the last value to be included, you can do 1..=4
I've been doing rust in non professional setup for a while and I watched advanced videos of LGR and learned a lot of stuff I didn't know about traits/smart pointers/error handling. I said "surely I won't learn anything from basic control flow video here" - and I learned that break from loop can actually return... So far, I keep finding gems in every video, no matter how basic.
Very nice video of nice playlist, bro you can think of this as your investment coz as rust finds more popularity you will surely get noticed. Cheers !!
That's the plan!
Short Summary for [Common Programming Concepts in Rust](ua-cam.com/video/2V0JaMVjzws/v-deo.html) by [Merlin](merlin.foyer.work/)
Title: Understanding Basic Programming Concepts in Rust
[00:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=2) Chapter three covers basic programming concepts in Rust
[01:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=110) Constants in Rust have key differences from variables
[03:38](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=218) Scalar data types and integer overflow in Rust
[05:29](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=329) Rust supports floating point numbers, booleans, and character types.
[07:13](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=433) Using vectors and array indexing in Rust
[09:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=542) Returning values from a function in Rust
[10:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=650) Different types of loops in Rust
[12:44](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=764) Use 'for' loop to iterate over arrays and ranges
---------------------------------
Detailed Summary for [Common Programming Concepts in Rust](ua-cam.com/video/2V0JaMVjzws/v-deo.html) by [Merlin](merlin.foyer.work/)
Title: Understanding Basic Programming Concepts in Rust
[00:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=2) Chapter three covers basic programming concepts in Rust
- Variables in Rust are immutable by default, to make them mutable, use 'mut' keyword after the let keyword.
- Rust also has the concept of constant values, which are created using the const keyword.
[01:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=110) Constants in Rust have key differences from variables
- Constants cannot be mutated and must be type annotated
- Constants can only be set to constant expressions and have more readable numeric literals
[03:38](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=218) Scalar data types and integer overflow in Rust
- Scalar data types in Rust include integers, floating point numbers, booleans, and characters.
- Integer overflow results in two's complement wrapping, with values greater than the maximum wrapping around back to the minimum value.
[05:29](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=329) Rust supports floating point numbers, booleans, and character types.
- Floating point numbers are numbers with decimal points and have default precision of 64 bits.
- Booleans represent true or false values, and character types represent Unicode characters.
[07:13](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=433) Using vectors and array indexing in Rust
- Accessing individual values within an array using standard bracket syntax
- Rust prevents out of bounds exceptions and memory unsafe behaviors by knowing the size of the array
[09:02](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=542) Returning values from a function in Rust
- Rust allows returning values from a function using the return statement. The return type can be specified after the parentheses by using a dash and an arrow, followed by the desired return type.
- Inside a function, the last expression is implicitly returned. An example is shown where the return keyword is removed, and the semicolon is omitted for the last expression.
[10:50](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=650) Different types of loops in Rust
- The basic loop created using the loop keyword executes the code until the break statement is called. It can also return values from the loop.
- The classic while loop executes as long as a certain condition is true, and the for loop is useful for looping through a collection.
[12:44](ua-cam.com/video/2V0JaMVjzws/v-deo.html&t=764) Use 'for' loop to iterate over arrays and ranges
- Iterating over arrays using the 'for' loop and printing each element.
- Using the 'for' loop to iterate over a range of numbers and printing them.
really clear and help video
Well I don't know how to say it but thanks for existing and making this series I was looking for it
I hope I'll see some real rust projects on channel too that'll be helpful
You have more then 100k now, congrats!
a question: when looping through an array, what's the difference between `for el in a.iter()` and `for el in a`, because both works and in the Rust book (as of July 2022) it uses the `for el in a` version, without mentioning the `iter()` function
`for el in a` will loop over a but will also consume a. `for el in &a` is the same as `for el in a.iter()`.
i really appreciate you taking the book and converting it into video format, i have a hard time keeping focus when reading programming books and much better learned when i can "hear" & "see" something rather than "read" it.
a bit ironic given programming is all about reading and writing code, but 🤷♂️
finally the sub_count matched the real sub!
4:31 meme flashbacks
eeeight beeeet
sixeeen beet
thirty twooo bit
64 BIT
ONE HUNDRED TWENTY EIGHT BIT!!
great series, thanks heaps for your effort. BTW the link to the The Rust book seems broken.
Weird to come from JS, I tend to think about tuples as a convention for arrays instead of a different kind of data type. Also arrays with variable length and fixed length arrays as different is also weird.
Great videos! Thanks a lot for this content!
Hi I'm coming from python, It's kinda weird that at 12:00 you have to "return" or in your case "break counter" to return the counter assigned to a new variable "result" couldn't you just break, and println!("The result is {}", counter)
Seems like overkill.
this was good, thank you :)
Good lad. Thank you.
Богдан, ти молодець!
1:50 Well, you don't have to dream much longer. As of end of 2023, you have 98.3 K subscribers. Thanks for a great video.
if you're reassigning an immutable variable and even changing its type through "shadowing", then how is it still immutable? I can see if you were doing shadowing inside of a function but we're able to redefine the top line declarations. Confused because it doesn't seem like strict typing and potentially not memory safe.
Цікава ідея, екранізація туторіала, лайкос :)
I am getting error in rust 1.75.0 for the below line:
let a: [i32; _] = [10, 20, 30, 40, 50];
It would be really nice if Rust had return type deduction i.e. “fn x() -> auto {…}”.
Hmm...the video is one year old, and you already have 56K subscribers. You're already more than half way to your dream! (1:50)
1000 likes for you
well from what i can see rust would definitely never work for game programming
what extension are you using in vs code for rust using that you getting full details of the each datatypes and its features,
just like for html css MDN reffrence is recommend when hovered
would be helpfull if you tell me please
You sir are a legend :)
constants might be also (probably?) stored in data segment of the process's memory (i dont know im guessing please correct me if im wrong)
watching this and your subscribers are at 114k congrats and thanks for the awesome content!
Thank you for this tutorail, tried running loop in different languages
rust is way faster than every other languages !
great content but man... these jump cuts all the time are annoying and I basically can't focus on what you're saying :(
Subscribed!
Making subscriber count a const was depressing.
Hope you grow my dude.
What a beautiful language!
Your explanation is very good, congratulations for creating this channel
Lets get Rusty
These videos are gold. Thanks for your work!
Thanks to ur vid! I am getting rusty :)
Won't have to dream for much longer, almost there to 100k!
Nice clear videos at the right pace for noobs like me. Thanks!
how to change the steps from 1 to a higher value in the for loops using range?
The music at the end, I could hear it during the video! Anyone else heard it?
I read and practice the chapters in the book then I come here to reflect and hear another perspective.
are there only two compound data types in rust? tuple and array?
Congratulations on 100k! Heh.
1:44 u want your subscriber count to be a constant ? U like to stagnate ? 😋
Getting pretty close to 100k subscribers :D +1 to everyone's previous comments. It's been super easy to follow these tutorials along with reading the book.
Guys, I rarely read books and have web dev background, I think the rust programming book is pretty good. Definitely these videos are also a great resource.
I love this series. Thanks!
Great stuff
No one in the comment section talked about shadowing being bad. I work in legacy c code and the codebase is very big with thousands of line in a function. It makes me anxious about the number of bugs that shadowing of variables can create allowed in the same scope.
This series is insanely helpful, thank you so much.
Really liking these videos, i hav ethe book but sometimes after coding all day at work i cant focus as much so just following along with the videos helps and once i start i get into it again. Thank you
Very Useful Thank you
Rust's the best.
thank you budd
Thank you for the video.
💕👍 Thanks for video!
Halfway to 100k
Hey buddy, what plugin are you using that is helping you to declare the variable type?
Data Types
Great series so far
Wonderful
hi husky
Thanks a lot ^_^
Great vid!!!!
Awesome video man, very helpful!!
I’m watching it just as a hobby as it’s being so easily perceived.
I really enjoy the format, how compact and at the same time comprehensive the videos are!
High five for the efforts !
…
ps
The hell with that, this is probably gonna be an unusual comment but I also enjoy your background !
LOL, that's the university district.
Is it just me or why is shadowing a thing?
because appearently naming variables quantity_string and quantity_number is le bad
Эх, Богдан, Богом дан Богдан! :D Спасибо за видео!
awsome
chapter 3 completed ....
Practicing one video a day to get rusty.
😎
🤓
You can actually just do the for loop without the iter
in shadowing, how we can use the first variable, for example - let x =5; let x =9; println!("x = {}", x); this is always print 9, but how we can use the first 'x' now??
I've watched so much of this series, and loved every minute. Then I heard you pronounce tuple, and it was so jarring and I instantly forgot everything I've watched. I'm sad that you're part of an enemy faction. I don't even want to know where you stand on tabs v spaces. I don't know if I could stand to hear the answer.
Why does "Let's Get Rusty" have to be typed, of all things, as &str. Literally useful for nothing. How many other string types does rust have now? Ridiculous. So many problems.