43 comments

[ 2.4 ms ] story [ 97.0 ms ] thread
Did you read any of those books? Any Rust book you would recommend in particular?
Read the actual “Rust Book” (basics), then “Rust for Rusteceans” (medium to advanced nuances of the basics), then “Zero to Production in Rust” (using the previous learnings in production).

The “async rust” book is helpful for async, but it’s still a work in progress. I would suggest reading the documents on the tokio site as a substitute.

I'd probably recommend switching the latter two and reading "Zero to production in Rust" before "Rust for Rustaceans".
My only quibble with Zero to Production in Rust is that I assumed the title meant "this is a good book for someone who has zero knowledge of Rust". The Amazon page for it also says "Zero To Production is the ideal starting point for your journey as a Rust backend developer," further implying the reader can have zero knowledge of Rust beforehand. The book's "Who this is for" section contradicts this directly by stating (paraphrased) that this book is for someone who has already read The Rust Handbook and is familiar with the basics of Rust syntax and patterns.
It's interesting that Programming Rust 2nd Edition is under Advanced Books. IMO it is the best introductory Rust book, though it does require some background in another programming language.

I am currently 2/3rds through Rust for Rustaceans. Since I picked up Rust around 1.0, there wasn't much new, but I did pick up a few interesting things along the way.

Agree that "Programming Rust" is a good book. It is thorough and provides good explanation about many trickier aspects of the language. However my biggest peeve about the book is lack of good complete working examples and exercises. I worked through the book and learnt much about Rust, but midway into the book I wasn't sure how good I am in writing code in Rust to solve a programming problem. IMO a side project, or some rust exercises that cover the topic one is reading in the book is a good way to work through this book.
I agree; I like the book, but the lack of exercises is a bit of a missed opportunity, I think. At times, it just feels like you’re reading a reference manual.
> it just feels like you’re reading a reference manual.

From other threads here and on r/rust, this seems to be a common opinion. I've seen multiple recommendations to pair it with another, more exercise- or project-oriented book.

I agree about the Blandy, et al., Programming Rust 2e being a great Rust book for people who already have experience with systems programming.

Many times, a question would form in my head (like "But then how does it address X?"), and would be answered within the next few sentences.

> though it does require some background in another programming language.

Would that still qualify it as an introductory starter book though?

I would not reccomend rust as a starter language! It's far too complicated. Even I as an experienced engineer needed a week to wrap my head around it and solve toy problems. A total begginer would give up long before they got productive. Rust is a great second or third language.

Begginers should stick to python or JavaScript

Yeah I came here to say the same thing. I wasn't sure what OP meant by advanced here. If they meant that the target audience is advanced programmers, I could see this making sense since the book definitely assumes decent familiarity with programming in general, but it didn't seem like the book teaches you advanced Rust, at least not as far as I can tell.
Any good Rust courses out there?
On frontendmasters there's a decent one by ThePrimeagen:

https://frontendmasters.com/courses/typescript-go-rust/

What's neat about it is you build the same commandline tool in three languages (Rust, Go, TS); you definitely get to see how useful each one is implementing similar features.

The author also appears to have another course planned on frontendmasters called "Rust for TS Devs" but there's no details about it.

I'm also curious about rust video content as the space seems really sparse.

That sounds like an interesting approach, especially since I already know TypeScript.
Yeah I definitely enjoyed taking it. It really sold me on rust afterwards.

There was a comment in another thread that said rust encapsulated complexity in the language and not the code, that statement really solidified my goal on investing more time learning rust.

I run some programming and math study groups on discord. I was talking to someone last week studying starting rust. Hit me up and I'd be happy to connect (email on hn profile).
Would love a similarly curated list of golang books.
Does anybody have any firsthand experience with the Packt published books listed.

In my experience, while there could be occasional gems, the majority are poorly edited and often contain typos and formatting errors and poor phrasing that books from the other publishers don’t have.

yes, occasionally they have good books, but the majority of the books there is really subpar.
My book is on the list there. I wrote a blog post about my experience with the publisher. https://blog.troutwine.us/2018/06/07/hands-on-concurrency-wi...

They produce A LOT of books and the amount of time their editors have to dedicate vary from book to book, from what I understand.

Thank you for posting this. I will definitely check out your book.

PS: I also love how your mom left a great review on Amazon for the book!

Where does the Command Line Rust book land? It was talked about extensively here recently.
Definitely beginner level, I was about to make a PR adding it to the list.
I’ve been working my way through the Rust Book and it’s been a great experience so far. The language seems like a breath of fresh air for someone who comes from the JavaScript/Typescript world.

Can anyone recommend materials about getting started with Rust in Wasm? I’d appreciate recommendations for intermediate and advanced materials too.

Does that book include exercises?
Exercises, no, but there are small project suggestions at the end of some chapters, and there are chapters that walk you through building some simple projects.

There is an unofficial version of the book with quizzes too [^1].

[^1]: https://rust-book.cs.brown.edu/

Thanks for your reply and that link :)
It seems that all of these books assume some prior programming experience.
Rust feels like a really hard first-language. I can’t imagine recommending Rust to an excited upcoming programmer.
Agreed.

Rust forces you to do a lot of thing correct. But when learning the basics of programming, "correctness" is one of the least concerns. At that phase, it should be about getting an idea into a somewhat working state ASAP. Rust, while I love it, isn't great for that.

I think you really need an "Intermediate" section. For example, "Rust for Rustaceans" was written explicitly for folks who had finished "The Rust Book" but long before "The Rustinomicon". I would put "Zero to Production in Rust" in this category as well.
I was looking for recommendations for a Rust book with lots of examples AND EXERCISES.

Also, I do have experience of almost 5 years professional programming (JS/TS, Java and some Python) so I'd like a book that doesn't focus on absolute beginners to programming.

So I went through some of "The Book", but then at some point switched to "Programming Rust". It doesn't feel like I skipped out on some basic things that I would've gotten if I had completed "The Book", but I obviously don't know that for sure. Does anyone have any color on that? Am I missing out on some basic things by jumping to "Programming Rust"?
Programming Rust was a better fit for me. I found "the book" a little too cutesy, and I felt like it wasn't consistent in what kind of reader it was targeting. I think the two books basically have the same goal of introducing the vast majority of Rust syntax and basic semantics to a reader who is already proficient in another programming language.
Yeah, that's exactly how I felt. Good to know someone else's experience accords with mine. Thanks for the reply.
This feels like a half-baked effort.

Adding the year of publication would make the list much more useful. Rust has changed noticeably since 2018 or so.

The criteria for classifying into beginner/advanced are unclear. Why is Programming Rust an "advanced" book when it mostly just introduces the language?

How many of these books and resources did the author personally read/skim? It seems like each book just includes the publisher's or author's promotional blurb, rather than any sort of first-hand summary of its contents and how dense it is.

There are altogether too many Packt books. Packt is notorious for poorly edited, sloppily produced books. Which ones are actually worth a reader's time and money?

I kind of wish a more complete version of this was up on the official Rust website under Resources.