As the old saying goes, "There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies."

Rust is a crutch which is enabling the proliferation of awful software from the latter camp under the guise of a moral imperative for "more secure" software

Good software engineers write simple software with simple tools, and it works. Bad software engineers write complicated software with complicated tools and it only works insofar as you run it on CPUs designed in the last 6 months on one of 2-3 operating systems on 1-2 architectures and provided you don't look at it too funny

@sir whether we want it or not, majority of software is written by "bad engineers", and people depend on it. It's better if the tools used to make it work with less hiccups, even if it constrains the environments where it can work.

@ignaloidas I think bad engineers can be made into good engineers

@sir I disagree. Not everyone who develops software is a professional engineer, and most of the time have no incentive(or even unable) to become a "good engineer". Take for example data science. They do use programming, they create utilities for self and others, but they do not gain anything from becoming a "good engineer". For them using tools that decrease the amount of thinking they have to do for a piece of code, while also adding security guarantees, is an obvious choice.

@ignaloidas Given a simple and well defined environment, bad engineers can write good code. Case in point: Golang. And I pray to any god who will listen that academics will not be building the operating systems of the future.

@sir @ignaloidas Unexperienced developer can do very harmful mistakes in Go just by overlooking some corner cases. The compiler does not help even when it could.

E.g. non-exhausting case switch or unintentionally shared state between goroutines. These bugs can live unnoticed for a long time and be very harmful.

@mprymek @ignaloidas certainly. But even good developers write bad code in Rust, because idiomatic Rust code is bad code.

@sir @ignaloidas I don't know Rust well but this statement sound like wishful thinking / ideological view more than a reasonable argument to me, I'm sorry.

@mprymek @ignaloidas I've enumerated my problems with Rust countless times, I encourage you to seek out these explanations instead of expecting me to prepare an essay for each person in my notifications

@sir @ignaloidas Do you have any carefully written text on any blog or anything? I have just read few toots here which I sometimes do not understand well.

@mprymek @ignaloidas I do, and searching "drew devault rust" brings it up as the result on DDG

@mprymek @ignaloidas admittedly, some of the argument comes from my larger perspective on software development, which isn't as easily googled, but scanning the titles should set you on the right path:

@sir @mprymek @ignaloidas That pretty much doesnt make any sense because it mostly doesnt add any overhead.

Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!