Book review: Rust Essentials

Rust is a very exciting new programming language developed by Mozilla. In Mai 2015 Packt Publishing published the first print book, also available as an ebook incl. in PDF format (DRM-free!!!) about Rust. It is called Rust Essentials and it is a rather short book covering the basics of Rust so that an experienced developer can start using Rust quickly.

Overall I liked the book and I’ve learned a few things I hadn’t already known or missed when reading the online documentation.
As the title says this book covers just the essentials. It often refers to Rust’s excellent online documentation for further details. So this book will not turn you into a Rust guru but that is not the goal of the book.

Rust Essentials covers most of the core ideas and concepts of Rust incl. the type system, control structures, how Rust achieves memory safety and how to use the pointer types in Rust. The module system, basic concurrency and even macros are also covered to some extent.

My favorite chapters where chapter 5 about “Generalizing Code with Higher-order Functions and Parametrization” and chapter 6 about “Pointers and memory safety”. Examples where well chosen to explain the concepts and I liked the idea of a computer game (although I do never play games mysefl). In the 6th chapter about pointers chapter I missed a deeper coverage of types like Ref and RefCell and I definitely missed at least a short introduction to the Cow (clone-on-write) pointer type. But maybe these types are too advanced for an “Essentials” book and belong into a bigger book (there is at least one in the making, see below).

The writing style the book is good and easy to follow. There are a few typos but nothing serious (I hope the publisher will update the ebooks for all customers who bought the electronic versions when the errata becomes available).
The code examples are easy to follow (note to Publisher: Please use syntax highlighting in the PDF!) and is also available on Github.

The question is: Is the book necessary if you’ve already read the online documentation? For some, probably not. Other, though, learn better when reading more than one explanation about the same topic and for them reading Rust Essentials in addition to the online book is a good idea.

Summary: In and of itself a good and easy to read introduction to Rust. If you want extra reading material in addition to the online docs, this book is a good choice.

Publishers website for the book:
Rust Essentials

Alternatives:
At the time of this writing there is not other Rust book available. One has already been announced and that is Programming Rust written by Jim Blandy and will be published by O’Reilly. It is currently scheduled for November and will have 400 pages (according to the book’s website).