As a neophyte, the only thing I find missing is proof by cases, exhaustive proof (sometimes there are just a few cases that can be trivially proven separately, yet a comprehensive proof is elusive), and (while it's a bit tangential) a couple tips on how to read others' proofs (e.g., what do things like "clearly" and "without loss of generality" precisely mean in this context, and what to do when you encounter them).
I didn't include proof by exhaustion because it wasn't going to come up in the course. But in principle it is the same as any other technique, but the trick is figuring out which cases to break it into. There is an art to that which varies by topic, and I don't feel up to trying to explain it in general. :-)
On how to read proofs, my hope was that I wouldn't be presenting any proofs that are hard to read. And given their level of skill, I didn't want them trying such shortcuts either. That said, the trick is to recognize weasel words where the author's laziness makes the reader do work, and then do that work.
When someone says "clearly" what they mean is "the proof is routine, and I don't want to clutter my line of reasoning digressing into a proof of it." If you don't find it clear, then you have to produce that proof (or at least an outline of it). Filling in these details is often one of the hardest parts of reading someone else's proofs.
"Without loss of generality" means, "I'm about to set up a bunch of stuff that looks like it could be a special case, but it really isn't." As a reader it is then your job to figure out why it isn't a special case. Once you are convinced that it really isn't a special case, then you can accept the specific setup that just got made.
And "similarly" means "the proof for this piece is pretty much the same as what you just saw, and I don't feel inclined to write it all out again." In that case you need to convince yourself that this is true.