ciel

ciel

Hands-on Rust B4.0 183 - amulet char ambiguous for epub and few other thoughts

First, I’m quite enjoying the book. This has been my favorite resource so far that I’ve found for rust. Most of the tiny errors I noticed have been fixed up in the latest version, and from reading some of the threads there’s even more fixes coming.

I used the epub version of the book for my run through (Beta 3). I haven’t gone through the new stuff in B4.0 but I noticed this in 3 and is still in 4.

On the apparently superior PDF version the character for the amulet is pretty clearly the pipe character.

But in the epub version, it’s not that obvious.

I thought the book had a typo doing a slash instead of the pipe character, but I realized way later on that strings and chars seem to be in italics. Which is confusing for the pipe character.

Another thing that “broke my flow”, was needing to get the updated dungeon font. When adding mobs/themes/items. Why not just give an “empty” one for people who want to customize on their own, and a “filled out” one to go through the book. I don’t think it’s really much of a “spoilers” thing since we go over the design doc before writing code for the dungeon crawler. I don’t know if this is a side effect of the book being released in parts and those things not being finalized just yet.

I don’t know if I missed it mentioning this in the book, but something that might be helpful to point out is that if they forget to put “mod X” in their mod.rs file (for example, mod player_input in the systems/mod.rs), they might not get autocompletion/formatting/etc from the rust tooling. I seemed to forget putting it in a few times and I was really confused on why I wasn’t getting errors checked or formatting fixed.

This last thing might just be a rust tools thing…
I’m wondering is if any one else is having issues with autocompletion when using “use crate::prelude::*;” while writing a sub-module? I’m using VSCode. The prelude doesn’t have a problem in the main crate level. This is usually no problem except for when I need something out of bracket-lib or legion. I have a CS degree and I didn’t learn how to write “Dijkstra” until this.

Most Liked

herbert

herbert

Author of Hands-on Rust

Wow, I had no idea that epub was going to cause an issue there. I’ll try to use a different glyph for the next beta.

I definitely agree on underlining the benefits of adding the mod x calls. It’s one of the topics that trips up newcomers to Rust (I understand why it doesn’t just include every .rs file - it’s helpful if you want to do advanced things like conditionally compile for a platform, but it’s confusing when you start). I’ll see if I can clarify that in a few places.

Which Rust plugin are you using for auto-complete? I’ve largely switched to rust-analyzer rather than the default Rust/RLS (it changed its name). It’s quite a bit faster, and generally pretty accurate on auto-complete by using a miniature version of the compiler. It’s come a long way recently; when I started the book, it was too unstable to recommend. Now, I’d have trouble living without it!

I’ll contemplate the font file. I may be able to claw back some page-count by making the font-file up front and reusing it. I need to strike a balance by not confusing people too much with a bunch of content up-front that won’t be used for several chapters. Anyone else want to chime in here? I’m leaning towards making the font up-front, just want to be sure that won’t confuse people!

Where Next?

Popular Pragmatic Bookshelf topics Top

jon
Some minor things in the paper edition that says “3 2020” on the title page verso, not mentioned in the book’s errata online: p. 186 But...
New
ianwillie
Hello Brian, I have some problems with running the code in your book. I like the style of the book very much and I have learnt a lot as...
New
raul
Page 28: It implements io.ReaderAt on the store type. Sorry if it’s a dumb question but was the io.ReaderAt supposed to be io.ReadAt? ...
New
gilesdotcodes
In case this helps anyone, I’ve had issues setting up the rails source code. Here were the solutions: In Gemfile, change gem 'rails' t...
New
nicoatridge
Hi, I have just acquired Michael Fazio’s “Kotlin and Android Development” to learn about game programming for Android. I have a game in p...
New
brunogirin
When installing Cards as an editable package, I get the following error: ERROR: File “setup.py” not found. Directory cannot be installe...
New
dsmith42
Hey there, I’m enjoying this book and have learned a few things alredayd. However, in Chapter 4 I believe we are meant to see the “>...
New
akraut
The markup used to display the uploaded image results in a Phoenix.LiveView.HTMLTokenizer.ParseError error. lib/pento_web/live/product_l...
New
AufHe
I’m a newbie to Rails 7 and have hit an issue with the bin/Dev script mentioned on pages 112-113. Iteration A1 - Seeing the list of prod...
New
dtonhofer
@parrt In the context of Chapter 4.3, the grammar Java.g4, meant to parse Java 6 compilation units, no longer passes ANTLR (currently 4....
New

Other popular topics Top

PragmaticBookshelf
Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you’ll go beyond the syntax—and...
New
Margaret
Hello everyone! This thread is to tell you about what authors from The Pragmatic Bookshelf are writing on Medium.
1147 29994 760
New
Help
I am trying to crate a game for the Nintendo switch, I wanted to use Java as I am comfortable with that programming language. Can you use...
New
PragmaticBookshelf
Programming Ruby is the most complete book on Ruby, covering both the language itself and the standard library as well as commonly used t...
New
PragmaticBookshelf
Author Spotlight: Peter Ullrich @PJUllrich Data is at the core of every business, but it is useless if nobody can access and analyze ...
New
PragmaticBookshelf
25 puzzles that will make you a better C programmer by challenging your knowledge of the language, and explaining the technical details o...
New
First poster: AstonJ
Jan | Rethink the Computer. Jan turns your computer into an AI machine by running LLMs locally on your computer. It’s a privacy-focus, l...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
AstonJ
Curious what kind of results others are getting, I think actually prefer the 7B model to the 32B model, not only is it faster but the qua...
New

Sub Categories: