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

A bit unrelated:

Maybe I'm wrong, but I get the impression that the people who learn Rust, tend to be quite experienced programmers. I have yet to see complete beginners document their journey, starting with Rust.

I've seen lots of people do that with C/C++, Java, and the other usual suspects - but Rust still seems like a language for at least intermediate programmers.



I think you're right but that it's not necessarily a bad thing. Rust's truly killer features probably won't appeal to you on a visceral level until you've been on the wrong end of a thorny problem like a race condition. Otherwise you might think it's a needlessly strict C++ clone.


There are definitely easier languages to learn for complete beginners. When someone needs to learn what a "string" is, it's not helpful to immediately require them to also learn the difference between a "heap-allocated string" and a "borrowed string".

However, you don't need to be an expert to learn Rust. It even helps if you don't have too many expectations about OOP and pointers, because their Rust equivalents have different design patterns/idioms, and you may need to unlearn some things.


> it's not helpful to immediately require them to also learn the difference between a "heap-allocated string" and a "borrowed string".

That's largely a special case of the general difference between owned and referenced data, which applies to all non-trivial data types. "String" just happens to be the first of those that most novice coders will encounter. If anything, it makes a nice "toy" case for the general distinction.


It's a very new language (NLL, a key feature in Rust ergonomics, was introduced in late 2018) and people are yet to figure out how to teach it to complete novices. Existing introductions assume that you do have some programming experience.




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

Search: