Coming from higher level languages, even C, it is actually very mind-opening to see stack as just 2 numbers (stack base, stack top). Not reading about it in theory but seeing in assembly how the program literally decrements the top address value.
I also remember finding the interrupt/syscall system surprisingly stupid and simple. Reading the kernel's source did broaded my horizons!
Why?