I really want to be a programmer. But I am more interested in operating systems(I always get goosebumps thinking about coding an operating system), programming languages, compilers, emulation, AI, embedded systems, assembly, parsing, hardware, etc. Where do you even begin for that stuff...