I think that I have seen multiple campers answer this with every possible answer over the last three years - from not taking notes at all to recording every challenge solution with notes and references in organized digital notebooks. My personal answer is that when I’m learning something new, I take physical notes because it helps me take time to consider and understand what I’m reading/hearing about. But then I just throw those notes out because it was the act of putting my thoughts into words that helped me.
Basically, go with whatever works for you. In the end, what really matters is that you’re working with the code. You’re practicing regularly and you’re tinkering. Don’t worry about memorizing anything - syntax, algorithms, whatever. What you need to know off the top of your head will get there by repeated use. The rest takes less than a minute to look up.
Nope. FCC is always growing, but I don’t think C is anywhere on the horizon. I like “C How to Program” by Dietel and Dietel. No need to get the newest edition. C is an old language and new editions are just part of the textbook racket.
If you just google that, you’ll get a ton of resources. The top one will probably be GitHub’s own Try GitHub. If you’re still sort of lost on what GitHub is even about, I really like starting people with Git and GitHub in Plain English.