Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

FTA : "This is the point at which Rust’s very strict typing and borrow checker converts from a productivity liability into a productivity asset."

that's what rust is about in my own experience. Especially with threads.




Me too. A lot of people who try Rust encounter a very steep learning curve, and tend to question whether the borrow checker and strict typing is even worth it. For me, it's allowed me to build larger threaded and distributed systems than I've ever been able to before. I've tried to build such systems in C/C++ but I've never been able to make something that isn't incredibly brittle, and I've been writing in those languages for 25 years. For a long time I thought maybe I'm just a bad programmer.

Rust changed all that. I'm kind of a bad programmer I guess, because Rust caught a lot of bad decisions I was making architecturally, and forced me to rewrite things to conform to the borrow checker.

This is the point at which I've found many people give up Rust. They say to themselves "This is awful, I've written my program one way I'm used to, and now it looks like I have to completely rewrite it to make this stupid borrow checker happy. If I had written in C++ I'd be done by now!" But will you really be done? Because I had the same attitude and every time I went back to C++ I surely built something, but if it got too large it would be a sandcastle that would fall over at the slightest breeze. With Rust I feel like I'm making skyscrapers that could withstand an earthquake, and I actually am because the programs I've written have weathered some storms that would have washed my C++ code out to sea.

Of course one can make stable, secure, performant systems in C++ and many other languages. But apparently I can't, and I need something like Rust to empower me. Someone else here said that Rust attracts people who want to feel powerful and smart by writing complicated code, but I like to write Rust code just to not feel inept!


I remember someone saying that "Rust skipped leg day", feeling that Rust was overly focused on the borrow checker while only solving a small number of problems.

1. I think its easy, especially for GC users, to forget that memory management is really about resource management.

2. The composability of features with the borrow checker is outstanding, like proper session types / locks or Send+Sync for safe use data with threads.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: