Everyone: it went really well!
Here are the slides: https://docs.google.com/presentation/d/14LMc2CxL9Eos_ASC7Rt-RRhAQ5Pe0nmDFbx5ZztYvWk/edit?usp=sharing
The objective was to convince them that Rust is a well-thought idea that can (and probably will) help shape the future of systems and high performance computing. I didn’t go into the nitty-gritty details of ownership/borrowing/(threading primitives) or anything like that, because I only had 15 minutes.
I did convince them that Rust interops really well with C and C++ and can be used to extend the existing codebases without affecting performance. And I also convinced them that Rust has no data races . I also showed how easy it is to have undefined behavior in C++, and how the compiler in Rust will see that instead and help you avoid it.
At least 3 or 4 people asked questions, which in a course of 10 is not bad I think one or two might actually check out Rust.
For the two Demo sections (Demo 0&1 and then Demo 2), I used these:
- Demo 0: I showed the C
malloc but w/o
free v/s the same in Rust (which of course, frees the memory), from http://words.steveklabnik.com/a-new-introduction-to-rust
- Demo 1: from the same post, I showed the C++
main that crashed after trying to read from an invalidated pointer, v/s the same in Rust which triggers a compile-time error.
- Demo 2: I prepared the Rayon demos, but I was just short in time. Still, I managed to explain how Rayon allows Data Parallelism v/s how OpenMP does it, and I was pretty satisfied
Thanks, y’all. I had a great time, and I learned a lot.
rustup was ridiculously easy to set up and use. I’m so grateful for good tools . I think it’s the easiest language I’ve ever tried to set up in my machine!
PPS: the slides ended up being in spanglish I guess that’s how I can better express myself. I think half of the time in English.