These are precisely the type of "ahas" I hope to experience, too, when I begin studying computer science. I've been taking introductory college math courses at my community college to fulfill some prerequisites, and a way for me to stay disciplined in my studies is knowing that concepts like the ones you mentioned are coming. Thank you for sharing!