5 ms·
Yeah, your points are valid. I think the beauty of serde is its flexibility. I can change the format from JSON to one of the other 21 supported formats with ea
by nindalf 4y ago
Yeah, your points are valid.
I think the beauty of serde is its flexibility. I can change the format from JSON to one of the other 21 supported formats with ease.
We're both agreed - popularity benefits platforms in many ways. I'm not a fan of hype-driven things, unless the hype ends up making the thing more valuable.
Rust is a good example - there was undoubtedly something useful there with its concept of compile time checks and memory safety with performance. It also had nice tools like cargo. But that wasn't enough. Quality alone isn't enough.
Look at the adoption curve (https://lib.rs/stats https://lib.rs/stats). If it had remained as popular as it was in 2018 then it would not be something I could recommend for general purpose programming. The main criticism of Rust in 2018 was that there weren't enough libraries to do basic things. You had to write and maintain a lot of that yourself. Fortunately for Rust, the hype based around its feature set and early successes snowballed into more adoption. In 2023, hardly anyone complains about missing libraries. At most they're missing one or two, and they can write those themselves.
Joining a hype train of a platform is a rational thing to do, because of the technical benefits of using a popular platform.
I'm far more critical of fads in our industry where we blindly copy practices from large tech companies, like algorithmic interviews. Copying interview practices doesn't lead to shared benefits, unlike a platform.
> Whatever your favorite PL is, it may also grow features too fast.
For what it's worth, Rust is really conservative about adding new features. Only big features I can remember in the last 3 years is GATs, and that's a pretty nice feature. Most of the feature work is making things more consistent. For example, we can write async functions but not async trait methods. They're fixing this inconsistency now.