4 ms·
Hi author here, Yes this is a piece of opinion, not a scientific measure of anything. This is just a report of the voices of the people I'm converting to Rust
by sylvain_kerkour 6y ago
Hi author here,
Yes this is a piece of opinion, not a scientific measure of anything. This is just a report of the voices of the people I'm converting to Rust because they are never heard.
The compound effect of small additions every 6 weeks is complexity.
Yes there are editions. But from a newcomer's point of view they only add complexity.
Feel free to disagree, but I'm convinced that short release cycle and feature bloat are related. I simply don't want Rust to become the new C++ (which is the feeling of a lot of people).
- vaylian 6y ago> This is just a report of the voices of the people I'm converting to Rust because they are never heard. That is something that is missing in the article. I think it is valuable to know about these opinions, so thanks for sharing them.
- chrismorgan 6y ago> I'm convinced that short release cycle and feature bloat are related Both here and /r/rust (https://old.reddit.com/r/rust/comments/m7seki/the_biggest_threat_to_rusts_sustainability/ https://old.reddit.com/r/rust/comments/m7seki/the_biggest_th...), this has been pretty thoroughly debunked. If you still hold your position after reading all the comments, I’d be interested in a rebuttal. As I said over in /r/rust, I think this claim of yours is still interesting because it’s a matter of perceptions. I’m certain that this perception is erroneous, but impressions still matter. If you want to succeed, it helps to manage public relations proactively.
- sylvain_kerkour 6y agoThank you for the heads-up! I missed Reddit's thread as I usually visit social networks only the weekends. I've bookmarked the page and will for sure read all the comments this weekend, they look very interesting (especially yours, that I've flew over)! That being said, I stand by my point: Short release cycles are an illustration of The Compound Effect. > A programming language is a platform. You can't build a thriving ecosystem on top of an unstable platform. We need, as a community, to find a solution to bring calm and focus to Rust, and then we will be able to stabilize and build a great ecosystem of libraries on top of that platform. > Short release cycles are suitable for products, as you can remove features or UI elements, and thus complexity can decrease over time. But for platforms, it means that you can only add things, as removing parts of a platform will break backward compatibility. Thus complexity may only increase over time. I would love to see almost "empty releases" in order not to add non-essential features and thus avoid feature bloat. But then, what is the point of short release cycles if it's not to add features? Wouldn't longer releases cycles make more sense?
- ChrisSD 6y agoMost Rust releases are almost empty. The ones that add something like async are exceedingly rare. Maybe once in a few years? And what would be the point of sitting on small, well tested, changes for six months or a year? What if it's two or three years before the next major feature is ready for stable? Do we have to hold back all the small improvements too? For example, making a function const allows it to be used in more places. This can be a big benefit for users. It doesn't help anyone to delay that once it has been decided it is const.
- ncmncm 6y agoThis will be an unpopular observation in certain circles, but to any outsider Rust is already visibly as complicated as C++. Rust, like C++, will only ever become more complex, never simpler (except in a certain sense I return to below). This is no indictment. Rather, it is a necessity, and a prerequisite to industrial success. The world is complex, and will not adapt itself to a language. A language must adapt itself to the problems the world needs solved. Failing to address a need sends users to languages that do not. The best that can be done is to start as simple as possible, and then develop as required. (C++ did did not get the luxury of starting simple, but only as simple as was, then and there, possible.) Every language that succeeds becomes, eventually, as complex as its users can handle. The limit is human-scale. The pressure to grow has no natural limit. There is a real sense in which added complication is needed to give an experience of better simplicity. We see this frequently in releases: restriction X has been removed. The surface texture of the language has become smoother, at the expense of the implemention, which needs to grow to implement the relaxed restriction. It is always easy to justify removing restrictions, simplifying the description of the language. But this is how languages grow. As restrictions are removed, code in the language becomes simpler. The language takes on more responsibility, so the programmer has less. This is a positive development. Rust is already a language that caters mainly to professionals, that demands serious education to adopt successfully. The majority of programmers will never succeed in adopting Rust. That was an early choice. Every language is determined by its choices, which box in unpredictable later choices. Sometimes the right early choice forces what seems like a wrong later choice. That is our lot as humans in an unfolding world. Celebrate Rust's trajectory as exactly what is needed to mature and succeed in a difficult world.