This post is part of my Book reviews series, where I share thoughts and impressions on the books I read.
Intro to the Rust programming language, aimed at experienced software developers.
The book goes through all of the key concepts of Rust, and presents in comparison C and C++ code as well.
23 Chapters and 400 pages, in quite a large-ish font.
👩💻🧑💻Who is this book for?
Programmers who know at least one other language and want to get to grasp with the basics of Rust. There are particularly good comparisons between C and Rust, so previous experience in C will help to easier understand many references.
The author is very knowledgeable, and has a very good way at introducing computer science theoretical definitions whenever it makes sense.
There are also very simple and clear comparisons between Rust code vs. C and C++; I found it very helpful to cement some fundamental understanding.
Even though most of the code examples might seem tedious to follow, if you really pay attention they are very well chosen; I've had several AHA moments when going carefully through them line by line.
The way in which he words his explanations just clicked with me naturally; there is a strange combination between "professor-like" teaching style and "down to earth" wording, which makes it much easier to understand. As a comparison, my #1 favorite Rust book so far (Programming Rust) has much terser and hard to follow explanations overall.
The phasing of the content, when to present what, was really good and done in a more logical and cohesive order than what other books have.
Adding row lines is a must, or small numbered bubbles like O'Reilly does in their books.
The editor should definitely be changed, or they need to ramp up their game significantly. I know this is a general problem with Apress and Packt publishers, and it sadly does a big disservice to the authors.
I think the font could be made smaller, and extend the contents of the book more.
🚧 Improvements I would suggest
Get a better book editor/read-proofing for the next edition.
Add sections on concurrency and parallelism.
A very good book, definitely recommended. With a better editor and some small - but important - improvements, it would become my number 1 recommendation for professional programmers to start with when learning Rust, even before THE BOOK from Carol Nichols, which is usually recommended by everyone else.
Well done Carlo Milanesi, thank you for sharing your knowledge and teaching with us! 🙏