Reviews

The Rust Programming Language by Steve Klabnik

maxredhamilton's review against another edition

Go to review page

challenging informative slow-paced

4.75

jhrcook's review against another edition

Go to review page

informative slow-paced

3.75

The manual on the Rust language. Good place to start if you are comming from higher-level programming languages (in my case, Python). There are some key principles around memory management and object ownership that are critical to understand to even write Rust code that compiles.

rjbs's review against another edition

Go to review page

4.0

On a previous read, I gave this "just good". I think I may still feel the same way, but now I feel like achieving "just good" with this complex topic is a good job. I also think it helped that I have (a very small amount) more practical experience with the language, now, that made it possible to finish the whole book without getting stuck in a place where things had become too speculative.

Chapter 20, the "final project", has the reader build a multi-threaded web server. It's a complete toy, but it's also fifty lines to show how much the reader has learned, and it really does perform safe multi-threaded network request service. It was a really good final chapter.

This is definitely not the only Rust book to read to learn Rust, but it was a good one.

gyrfalcon's review

Go to review page

Decided I would get more out of trying problems than following the last project.

doing_fine_thanks's review against another edition

Go to review page

3.0

Good but the language moves so fast it feels out of date quickly.

bucketoffish's review against another edition

Go to review page

4.0

This book presents a very easy to follow introduction to Rust. It seems like a very cool programming language, and includes features such as:

- Immutability: All variables are immutable by default, and must either be consumed when used, or explicitly marked as mutable. This prevents code state from changing in unpredictable and hard-to-track ways.
- Ownership: Only one function can have ownership of a variable at a time, which prevents memory issues. Other functions can have either mutable or immutable references to the variable, but the compiler forces a max of one mutable reference (with no simultaneous immutable references).
- Enums: The way enums are handled in Rust is really cool, and feels like a combination of the Enum and Union types in Python.
- Option: The Option type forces explicit checking for None whenever such a return type is possible.
- Error Handling: Rust forces error checking, and the simple syntax for passing errors back up to calling functions is really cool.
- Traits: This is like the Protocol type in Python, and seems very useful.
- Lifetimes: I don't understand how to use lifetimes yet, but I can see why they might be useful.
- Tests: The way Rust sets up testing is very easy to use, and solves a lot of the problems I have with large unit testing suites in Python.
- Closures: The built-in support for lazy evaluation using closures is pretty nice, and looks like it could save some time when evaluating code.

spai's review against another edition

Go to review page

4.0

Well written book. I wanted a quick overview of the Rust language and got it with this book. It seems to be a simple and well thought out language.

Now I need to find some project where I can put this language to use.

iggr's review against another edition

Go to review page

informative reflective slow-paced

4.75

julissadantes's review

Go to review page

informative

5.0

Very well structure and gives the perfect introduction to the language.

snpefk's review against another edition

Go to review page

3.0

Rust is good, book is norm 🦀