Goodbye, Rust. I wish you success but I'm back to C++ (sorry, it is a rant)
In my 3 year run in Rust I did asynch/multithreaded code, FFI with bindgen, kernel programming without std. It was fun. But fun is over, I started a C++ position 1 month ago.
Rust is a superior technology to C++. It has better tools (cargo), better libraries ecosystem (crates.io), it cuts out a lot of crap (no OOP, no exceptions, memory handling, etc), it disciplines you to do the things the right way.
But Rust is better in the same way that Betamax was better than VHS, Mastodon is better than Twitter, Dvorak keyboards are better than QWERTY, Esperanto is better than English and Lua is better than Javascript: in communication technologies, adoption and critical mass are 90% of the game and the other 10% are bikeshedding, at best. And programming languages are a communication technology, they're means to communicate ideas to other programmers.
And the problem with Rust is that it just doesn't have critical mass and, frankly, I don't think it will ever have. Recently, Linus Torvalds complained somewhere that old C dinosaurs don't want to learn Rust. For higher level stuff (e.g.: web backends) Go offers faster iteration cycles than Rust because it has a gentler learning curve and better compile times. Yes, Rust adoption is rising but competing technologies are also getting better (e.g.: safer C++ with better linting tools, JIT JavaScript and WASM engines getting faster) or rising faster (Go).
And then there's the elephant in the room: Rust is almost irrelevant for finding jobs. The majority of the Rust programming jobs asks primarily for deep knowledge in specialized technologies: cryptocurrencies/blockchain, finance trading, machine learning/data analysis, obscure network protocols, cybersecurity, etc. In those positions, Rust expertise is, at most, a "nice to have". My point is that you'll never be hired for knowing Rust well but for knowing well the domain.
This very same sub-reddit is also part of the problem. I find it crazy that in other programming language subs (e.g.: Golang, C++) the jobs threads are always stickied at the top. I rarely see it in here. It is like "the first rule of Rust jobs is that no one talks about Rust jobs".
There is an huge junkyard of technologies that failed to gain broad acceptance, many of them far more revolutionary than Rust (e.g.: Lisp, Smalltalk). I don't see why those technologies' story can be avoided.
It is worth mentioning: a big push in advancing programming languages was the support of big corporations. IBM pushed FORTRAN, AT&T pushed C, Microsoft pushed MS-Basic and C#, Sun pushed Java, Google pushed Python, Apple pushed Objective-C and Swift, web browsers pushed Javascript and most big companies pushed C++. I don't see that many strong sponsors firmly behind Rust and pushing for adoption by customers.
Edit: yeah, I know I'll be downvoted to oblivion because every sub-reddit is meant to be a circlejerk. No one likes inconvenient truths in reddit. But that is part of my point: a community that insulates itself will never become influential.
Edit 2: oh shit! My rant came to the top! Now I feel like a stupid whining child. Well done, guys... That was classy. Please don't take this post too seriously.
--
FROM 112.10.241.*