[OT] Thank you to everyone that has made Rust possible!

I know that this is way off-topic for this forum, but this is also the best channel I can think of to say this: THANK YOU to the everyone that has worked on Rust!

I recently graduated with my Ph.D., after having worked on 5 different versions of my simulator, written in 4 different languages. The last version, written in pure, safe rust, worked correctly in part because of rust's strong guarantees about what 'safety' means, which I was able to leverage to turn what would normally be runtime errors into compile time errors. That let me catch errors that would normally be days or weeks of debugging into relatively simple corrections. Based on what some of my bugs were that the borrow checker caught, I'm pretty sure that if I had written it in C++ I'd still be debugging it. So, once again, thank you to everyone!

53 Likes

Not at all. This kind of comment is always welcome and delightful, thank you. This forum is a good place for discussions among developers of Rust, and this is entirely on-topic for that.

Congratulations on the PhD! Great to hear that Rust helped!

14 Likes

Congrats on the Phd...

And I concur... I much rather deal with the issues up front, as compile issues while you're in that section of the code, than bugs later and have to re-orient... It can still be a pain, but less painful... JR

2 Likes

This is great! Congrats!

I'm also doing a PhD, coding some stochastic simulations using Rust. I'm curious, what kind of simulator did you implement?

It was a radio network simulator for robots that were continuously in motion, and therefore creating and breaking links over time. I tried using several simulators that were already available, but I wasn't ever able to get them to do what I needed, which is why I ended up writing my own. In the end, I designed a tentative event simulator that allowed it to skip the 'boring' intervals of time, while still correctly executing all the 'interesting' portions. The biggest headache was the wildly varying time scales I needed to simulate, from nanoseconds up through a full simulated day. Turns out that most simulators tend to use fixed size time steps, which is a little slow...

For those that want to write a radio simulator, my advice is don't. The #1 takeaway I learned from the experience is that it's much more efficient to do hardware in the loop, via cyborgs, i.e., lots of people with cellphones and a custom app that tells them what to do. I'm planning on writing at least one paper outlining the experience and engineering knowledge I got from it, if you're interested, direct message me and if/when it gets published I'll send out links to it.

5 Likes

I don't want to create a new topic for this, but I do want to reiterate my thanks.

I've been switched onto a project at work that has been primarily written in C++. It's been a long time since I've worked in C++, and I'd forgotten how much I loathe it. The compiler errors that I'm running into make me grateful for rust's sensible error messages that are actually helpful, rather than arcane, incomprehensible junk that originate in code that I didn't write or touch. Cargo makes compiling simple, rather than the constant headache that the weird build system we're using has. In short, thank you again for creating rust.

Hah! I just had a thought for a feature request! A cargo command called 'thanks' that lets us send in thank you messages easily...