andersr (17) [Avatar] Offline
#1
Hi - I am currently working through the tutorials in your book, and am currently toward the end of chapter 5. While I was really liking this book in the early chapters, I have become increasingly confused and finding it less useful as a learning tool. Below are some reasons why:

Why is reactive editing separated out from editing in general?

I'm unclear as to why we are not learning about fully reactive editing immediately. What is the purpose of the CRUD examples in ch 4 if they are not fully reactive as described in ch 5 ? Why even show us the Jquery way of doing things at all in chapter 4 and then have us replace this with new code in ch5?

Too many concepts introduced at the same time
Ch 5 starts talking about reactive editing, but then moves into a discussion about LocalStorage and mapping and other topics. It just feels as if there are too many concurrent topics being discussed all at once.

Too conversational and not enough structure
This applies to the book as a whole. There is too much intermingling between general discussion about Meteor and the tutorial. It would be great if you considered a structure such as the one on the Meteor tutorial, in which we present a block of code to be entered followed by discussion. Here, instead, instructions about what code to enter and where to enter it is mixed into general discussion and it is often not clear where one ends and the other begins. For example, listing 5.9 does not state where the code in the listing should be entered. Instead, you have to scan back into the preceding paragraph to determine this. Additionally, please be sure to make very clear when code example is included just for instruction and is not something that is part of the tutorial.

Ordering CRUD more naturally
The way in which CRUD is explained feels incredibly jumbled. A more natural ordering of this would be to start with 'C' or adding a house, followed by 'R' or showing what was added, then allowing for editing, or 'U', and finally 'D' or deleting a house. This way, the added houses could also replace the need for creating fixtures, which doesn't seems to teach us much about Meteor.

Why are we showing and editing in the same view?
Is the reason you have both the show and the edit view displayed simultaneously just for learning purposes? If so, I think that should be made clear. I think it would be more useful to show how one can toggle the show and edit view in the same template, instead of having the somewhat odd notification reminding a user that they should click save when they make an update.

Why is reactiveVar presented in ch4?
You have a side bar in ch4 that discusses reactiveVar as a superior alternative to Session (or at least that is what I understood) but then you continue to use session. It's not clear why this is introduced and why we don't appear to use it.

What should I expect to see after adding the code in section 5.5?
This is the point in the book where I am just so confused that I will likely abandon following the tutorials for now. It is not clear to me what I should expect to see after having added this code. By the time I reached section 5.12, I was just so confused by what I was supposed to update compared to what was suppose to remain the same and what the actual purpose of this section was, that I decided to abandon this chapter tutorial and wait for an update to be published.

Debugging meteor
It would be great if you included some discussion early on about debugging meteor. Currently, I'm just inserting a bunch of console.log statements to help in debugging but it would be great to learn about Meteor-specific techniques.

Overall, I've learned a lot from this book. Hopefully this feedback will be useful.
stephan.hochhaus (92) [Avatar] Offline
#2
Hi andersr,

first off, thanks a lot for your feedback - it is really helpful!
To me it sounds as if the general issues lie only with chapter 4 and 5, do you find the later chapters better again? I know you stopped reading at section 5.5 but perhaps you can peek ahead smilie

I partly agree that it seems odd to start out with editing and then having two chapters on similar things. Our intent is to gradually increase complexity and separate the CRUD from the actual usage to take the reader on a learning curve. Apparently we need to communicate this better.

I'll see how we can best apply your feedback into the book.
Thanks again for telling us!