Finished chapter 7, in the process of working on the exercises. A fair bit of stuff that's I'm not quite grasping in this chapter.
First, testing. I get the point of testing. And I understand in general how it's supposed to be done. But the actual syntax of all the different assert variations is black magic. I KNOW what I want to test for (in one case, and more or less in another case), but I don't know HOW to use assert_select (or any other assert) to test for it. I eventually figured out where it told me what to do, the specific syntax for the specific case, but I can't see any rhyme or reason to the syntax that I could use to write my own tests for anything except trivial variations of the same thing.
Which brings me to another point. To call these things "exercises" is stretching the definition. In some cases, its actually just "do this thing, and confirm that it works". That's not an exercise, that's more tutorial (except you have the excuse of an exercise to only explain what "works" actually means in the separate solutions guide). And even when it's not that, there's a lot of very specific exercises where they're almost entirely solved except for a tiny fill-in-the blank (which I tend to ignore initially, and try to write or at least think through the WHOLE solution, but still).
Forms are another thing that I'm still struggling with, but I think I'm in better shape there than on the various assert methods and testing. I think practice is what's needed there.
Flash is in similar situation. Maybe a little less familiar. But it also just feels less important. Like, I need to really understand forms just to make a functioning web app. Flash is an important, convenient tool, but it's not a central part of the functionality, and it's also separate, something I can focus my attention on and add to my skill set separately.
I'm not sure I understand what's generating the errors associated with an unsucessful signup.
Setting up SSL and Puma were black magic, but I think they're supposed to be. There not something I need to understand at this point, and they're not that different for different applications, so it's something where just following the directions is OK.