mikecargal

mikecargal

Hands-on Rust: Presentation order in map_builder section

Title: Hands-On Rust (??? ePub)

Just finished the map_builder section. Just a suggestion here (others may disagree). This felt like the order was more from the perspective of someone who “just knew” from the start what all functionality he would need (perhaps, from having implemented it already?? :slight_smile: ).

It means that you’re putting a lot of pieces out there as a reader without really understanding why. As a developer, I think it’s probably more common that you build out the high level structure, determining what functionality you’ll need as you go. And then drill down fleshing out the functionality.

Suggested order:

  • build
  • build_random_rooms
  • build_corridors
  • apply_horizontal_tunnel && apply_vertical_tunnel

This way, as you build out functionality, you understand it’s context and aren’t waiting until the end for things to all come together. (It’s not quite so problematic to defer hooking things into main until the end.)

Marked As Solved

herbert

herbert

Author of Hands-on Rust

Thank you! I’ve put this into the book’s issue tracker. I’ll try and squeeze it into beta 2, but it may hit beta 3 - wrap-up on beta 2 has begun, I’m not 100% sure where the “freeze” mark is.

Also Liked

mikecargal

mikecargal

I suspect, it’s more of a globally applicable suggestion. I won’t bother to post similar over and over again for other suggestions.

herbert

herbert

Author of Hands-on Rust

I will keep an eye out for it. It shouldn’t be too prevalent, I tried to keep things in a sensible order when possible.

Where Next?

Popular Pragmatic Bookshelf topics Top

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
jamis
The following is cross-posted from the original Ray Tracer Challenge forum, from a post by garfieldnate. I’m cross-posting it so that the...
New
jdufour
Hello! On page xix of the preface, it says there is a community forum "… for help if your’re stuck on one of the exercises in this book… ...
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
herminiotorres
Hi! I know not the intentions behind this narrative when called, on page XI: mount() |> handle_event() |> render() but the correc...
New
jskubick
I found an issue in Chapter 7 regarding android:backgroundTint vs app:backgroundTint. How to replicate: load chapter-7 from zipfile i...
New
oaklandgit
Hi, I completed chapter 6 but am getting the following error when running: thread 'main' panicked at 'Failed to load texture: IoError(O...
New
jonmac
The allprojects block listed on page 245 produces the following error when syncing gradle: “org.gradle.api.GradleScriptException: A prob...
New
mcpierce
@mfazio23 I’ve applied the changes from Chapter 5 of the book and everything builds correctly and runs. But, when I try to start a game,...
New
dachristenson
@mfazio23 Android Studio will not accept anything I do when trying to use the Transformations class, as described on pp. 140-141. Googl...
New

Other popular topics Top

AstonJ
Or looking forward to? :nerd_face:
498 14002 274
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
PragmaticBookshelf
Tailwind CSS is an exciting new CSS framework that allows you to design your site by composing simple utility classes to create complex e...
New
AstonJ
Continuing the discussion from Thinking about learning Crystal, let’s discuss - I was wondering which languages don’t GC - maybe we can c...
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
PragmaticBookshelf
Use WebRTC to build web applications that stream media and data in real time directly from one user to another, all in the browser. ...
New
PragmaticBookshelf
Build efficient applications that exploit the unique benefits of a pure functional language, learning from an engineer who uses Haskell t...
New
AstonJ
Was just curious to see if any were around, found this one: I got 51/100: Not sure if it was meant to buy I am sure at times the b...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
New

Sub Categories: