3 ms·
I think maybe I was a little bit imprecise. It's not that the projects are too hard, but that the way the book is structured doesn't give you what you need to c
by chc 9y ago
I think maybe I was a little bit imprecise. It's not that the projects are too hard, but that the way the book is structured doesn't give you what you need to complete the project before giving you the project itself. They're a "follow along" thing, not a "here, now you're 100% ready for this" thing. The projects tend to be designed to illustrate the concepts introduced in the chapter, so a reader can't do the project before they've read the chapter, because they don't know the things that the project is meant to teach. And after they've finished the chapter, they've already finished the project just by following along — but they haven't actually demonstrated any mastery of the subject in doing so.
For example, it's not like somebody's going to start TRPL, see "Let's make a guessing game," stop there and successfully make a guessing game — they don't know any Rust at that point! Similarly, IIRC we're not introduced to most of the IO functionality before the IO project, and so on.
- steveklabnik 9y agoThanks for clarifying. :) Jake lists both kinds above; it's true that the project chapters are "follow along", but there are also suggestions for doing some extra stuff on your own. Regardless, I think your overall point is correct: tons of projects is certainly not how we've structured the book. It is a thing some people want and would find useful. We'll see in the future.
- YuukiRey 9y agoPersonally, the Rust Book (2nd edition) seems like good teaching material (from the perspective of a junior self-taught JS dev). What would make it even better is adding a few questions at the end of each chapter, much like the homework in https://www.seas.upenn.edu/~cis194/spring13/lectures.html https://www.seas.upenn.edu/~cis194/spring13/lectures.html. These don't have to be large projects, but they shouldn't be a simple rehash of the prior code blocks either. Ideally they pose a challenge that, when solved in a "typical beginner way" (whatever that is), cause the reader to stumble over some common gotchas. The first few chapters actually mention and explain some of those gotchas (like ownership in regards to returning from functions or accepting a reference). The difficulty probably lies in not outright explaining everything, but not making the reader feel completely lost at the same time. Then again, questions can always be added later on and if the basic reading material is good (which it is!), it's only going to make an already good source even better. I guess that's meant to say thanks for the Rust book.
- steveklabnik 9y agoMakes total sense. Thank you! I’ll give this some thought.