Just wanted to say "Thank You"

Not sure if this sounds a bit cheesy, but triggered by seeing that GATs are likely to be stabilized soon, I would really like to express my thanks towards everyone who's working on Rust and its ecosystem.

To me, getting to know Rust has been a huge change in regard to my perception of programming overall.

Coming from more minimalistic languages, such as Lua and C, I hesitated to move towards languages which come with a complex type system. That is not because I hate complex type systems, but because everytime I looked at some implementations, I felt like they were somewhat flawed or lacked expressiveness; or they were not as suitable for real-life applications or came with runtime overhead. Rust feels (and in some aspects certainly is) different: I can easily write down abstract ideas or generic functions, which are reusable in other contexts later. The inline documentation and unit testing framework is also easy to use.

My favorite core features of Rust are:

  • the concept of traits,
  • the pragmatic yet precise way of handling mutability (passing arguments by-value, by-shared-reference, or by-mutable-reference),
  • avoiding garbage collection (yet Rust makes it hard to produce memory leaks on accident),
  • protecting me from the most difficult-to-debug mistakes such as

I'm sure I forgot some other features which I certainly don't want to miss again.

Rust isn't perfect, and I have expressed my critique here and there, but all this critique is nothing compared to all the positive experiences I had with Rust. I also got accustomed to deal with async Rust, and it's a lot of fun, despite some unfinished things (such as async traits). I'm also really happy about tokio and recently used many of it's synchronization utilities. Thank you also for these!!

Maybe one day I will want to move to a different language again, but for now Rust feels like the best programming language I ever used (and I'm sure a lot of people here feel the same way). I'm truly grateful that so many people are working on it and that Rust and most of its ecosystem is available for free under a liberal open source license. It's a huge gift to the open source community.

Thank you!

44 Likes

Totally with you there.

I'm still nowhere near up to speed with Rust's notion of expressing program intention with types or functional programming and no doubt other "idiomatic" Rust concepts.

Most of the Rust code I write is probably terrible. It's basically me trying to program in C or similar language I have used in the past (C++, Pascal, Coral. PL/M) and letting the compiler beat me over the head until I have avoided all the mistakes I would make in those other languages.

Or it's basically me trying to write Rust as if it was Javascript.

The change in my perception of programming is that I had assumed that we were doomed forever to compiled, C like, languages for performance and just have to put up with all the endless crashes and corruptions and endless debugging sessions. Rust has shown this is not true. Even my terrible Rust code generally works when I can get it to compile. Debugging time is drastically reduced. There have been no calls in the night for any of the Rust I have had running in production failing for nearly three years now.

12 Likes

That's an understatement. When I was writing C++ code back in 200x, the debugger was an essential part of the Holy Trinity: editor, compiler, debugger. Now my debugging skills are rusty at best. With Rust, I can focus on actual logic of the code, instead of dancing around UB mines.

2 Likes