Watched bit of this. Just wanted you to know that I think you are taking the perfect approach to teaching Rust, by doing ownership first. (and you're to the point and informative). Good job.
The fact that this video has 36 comments is whats wrong with the world. I am in Software but not exposed to rust.Having watched a couple of videos of Niko Ive started knowing the depth of what they are trying to do here. So much control of resources with such nifty concepts.
3:54 a java program which begins in void main(){} i know probably it was just to avoid confusing watcher but java main is actually "public statuc void main(String[] args)"
As an existing programmer, but a beginner to rust, it would have been much handier, and more intuitive, if there were not two types of variables - some that automatically get copied, and some that don't. Hopefully I will get used to knowing which is which.
20:44 you explain how the compiler will warn you about not modifying a mutable variable, however if your input happened to be a string comprising completely of vowels (or an empty string), the function will still return without having modified output variable! This can only be found at runtime. Is this situation okay ? Thanks :-)
Why does the call to println!() on line 35 not complain that the ownership to devowelized_name has already been transferred once on line 29? Is it because println!() is not a function but a macro and it does not take ownership like functions do as the video explains? Also, for Goal #2, how about changing line 11 to fn remove_vowels(name: &String) -> String and then passing an immutable reference to name on line 28 as let devowelized_name = remove_vowels(&name); Is this a worse than the way explained in the video?
I believe the reason he did the way he did is just to keep it simple, since '&String' makes use of 'shared borrow' which is a concept he talks about on a different video in the series.
Please don't tell me this initiative has been discontinued. I've just decided to get into Rust and was really liking this material. Then I noticed the date. Has this series been moved elsewhere?
The best animated explanation of ownership in rust.
Strongly agreed.
Great tutorial, but you really really should have published it with "Rust-lang" or "Rust" in title, so everyone could easily find it on youtube.
This is really the best tutorial on ownership
Hands down best rust explanation I‘ve come across, kudos
Best pat of the video is the "Fire" animation.. lol... But on a serious note seriously appreciate the time and effort!
Watched bit of this.
Just wanted you to know that I think you are taking the perfect approach to teaching Rust, by doing ownership first. (and you're to the point and informative). Good job.
Great series of videos. It would be great to see more
Really enjoyed this. Thank you.
The fact that this video has 36 comments is whats wrong with the world. I am in Software but not exposed to rust.Having watched a couple of videos of Niko Ive started knowing the depth of what they are trying to do here. So much control of resources with such nifty concepts.
3:54 a java program which begins in void main(){}
i know probably it was just to avoid confusing watcher but java main is actually "public statuc void main(String[] args)"
You're great at explaining all of this, thanks a ton
Thank you. It was verry helpful.
Im here for the fire animation.
Jokes aside, that was a really great explanation, thanks a lot!
As an existing programmer, but a beginner to rust, it would have been much handier, and more intuitive, if there were not two types of variables - some that automatically get copied, and some that don't. Hopefully I will get used to knowing which is which.
For example most interpreted languages do copy for most variables shared by arguments. E.g JS will copy values except objects.
20:44 you explain how the compiler will warn you about not modifying a mutable variable, however if your input happened to be a string comprising completely of vowels (or an empty string), the function will still return without having modified output variable! This can only be found at runtime. Is this situation okay ? Thanks :-)
That animation was fire
I notice that the println! macro does not seem to take ownership of variables given to it. Special case?
Thank you for the great content! I have a quick question, shouldn't we declare "mut" when shadowing a variable?
Goat explanation!!
Why does the call to println!() on line 35 not complain that the ownership to devowelized_name has already been transferred once on line 29? Is it because println!() is not a function but a macro and it does not take ownership like functions do as the video explains?
Also, for Goal #2, how about changing line 11 to
fn remove_vowels(name: &String) -> String
and then passing an immutable reference to name on line 28 as
let devowelized_name = remove_vowels(&name);
Is this a worse than the way explained in the video?
Would: fn remove_vowels(name: &String) -> String ... println!("Removing vowels from {:?} yields {:?}", name, remove_vowels(&name)); be considered bad/good/slow/unidiomatic ?
Good question. I actually went this route to solve the problem and extra credit and would like to know the same thing.
I’m also curious about that, to me it seems like using a reference would be quicker.
I believe the reason he did the way he did is just to keep it simple, since '&String' makes use of 'shared borrow' which is a concept he talks about on a different video in the series.
Rust is very powerful, but also feels very arcane and slow to write at the same time
That puzzle was satisfying to solve
This Video is amazing. Thank you for preparing my presentation :'D
Thank you... So helpfull.. Great..
extremely helpful, thanks so much!!!
Nickolas, what software do you use to create these animations/video?
Fantastic
is this a legal concept or CS concept. i was looking for legal definition.
This is about the Rust programming language, which has the concept of ownership.
What editor is that ?
Based on the "drop" animation, I wonder if Mr. Matsakis might be an ATHF fan?
Please don't tell me this initiative has been discontinued. I've just decided to get into Rust and was really liking this material. Then I noticed the date. Has this series been moved elsewhere?
Phenomenal video
Крутое видео
I thought it was gonna be about DRM.
💛💚
21:37 singing
Why do you call them "simple types"? You seem to be avoiding calling them "primitive types". Is this intentional?
Your description of a JVM garbage collector is outdated.