You really can’t say ‘take notes’ too many times, haha.
I’ve been doing Javascript algorithms basically every day for a while now, and this is what I do to really juice the experience. I make a ‘worksheet’ in a word processor to organize my notes, and make sure I’m noting the right things. If you’re like me, and you’re super OCD about not getting the most of these lessons, this worksheet might work for you.
My worksheet has the following headings:
WHAT I DID YESTERDAY - Here, I review/link to problems and challenges I did yesterday so I can make sure I can still do them today.
NOTES - For the current challenge/algorithm, this is where I write out my thought process before I actually code. If you don’t already do this, it makes coding sooo muuch easierrr…
ALGORITHM QUESTIONS - This is where I write the ‘little steps’ involved in solving a challenge/algorithm: how do I remove duplicate elements from an array? how do I flatten an array? Any ‘little steps’ that I think I’ll need again in the future goes here, so that I can memorize them for future problems
ERRORS - This is where I write out common mistakes that I make that fudge up my code, so I can stop making them!
THINGS I FORGOT - This is where I note what methods and functions I knew about, but had to look up. There’s a big difference between ‘knowing’ and ‘sort of knowing’!
HOW THE BEST ANSWER WORKS - If I have access to someone else’s answer, this is where I explain to myself how that answer works, so I can absorb what ‘good code’ actually looks like (versus my own wordy, clunky code).
When all of that’s done, I add anything under ‘ALGORITHM QUESTIONS’ and ‘THINGS I FORGOT’ to my flashcards (I use Quizlet) to study for later. I then save this worksheet, then look at it again tomorrow so I can remind myself of common mistakes, things I learned yesterday, etc…