DEV Community

Discussion on: Adventures in Rust

Collapse
 
buntine profile image
Andrew Buntine • Edited

Rust is one of those languages that wil force you to become a more rounder programmer because, depending on your background, it will help to introduce you to a more rigid, defensible style of programming. When learning, I loved the fact that error-handling is furnished to the programmer at such a high-level. You may also find that the community is friendly, yet typically far more advanced than the insert-popualr-language-here groups. By necessity, you will be forced to learn a lot about your program after you've written it (how it's laid out in memory, the effect of CPU context switches, etc). These are typically concepts that are lost on programmers working in more abstract environments.

Trust me, your struggles with the borrow checker will become much less frequent when you begin to really understand how it works and why it's there. I found that even when I knew, it still took a few months before I really knew. I am glad that Rust generally does a really good job with it's error messaging, also. So even though you may be having difficulty compiling your code, the error messages will go into great detail and even provide possible fixes.

Collapse
 
omawhite profile image
Omar White

What would you suggest for someone interested in learning rust. What resources should I go through to learn with? What would be something a rust newbie should try to build?

Collapse
 
cradee profile image
Paul Bochar

/r/dailyprogrammer really cathcy.

Thread Thread
 
dmerejkowsky profile image
Dimitri Merejkowsky

Thanks for letting us know about exercism.io. Looks really nice :)

Collapse
 
buntine profile image
Andrew Buntine

The official "book" is the best place to learn rust. It's a relatively fast-paced book but does not assume you have any familiarity with Rust (or any other systems language): doc.rust-lang.org/book/second-edit...

In terms of what to do, a nice way to get proficient in a language is via Exercism: exercism.io/

When learning a new language I like to implement the Game of Life and a Brainf*ck interpreter.

Thread Thread
 
omawhite profile image
Omar White

Ive never heard of exercism before looks like a great resource. Thanks!

Thread Thread
 
8uurg profile image
8uurg

I can really recommend the Brainf*ck interpreter. Also try implementing some optimizations such as combining operations.