I hate how compilers are taught in college. They take a trivially easy problem: convert a text file to machine code, and make it absurdly hard.
You can do 90% of a compilers job if you know how to read text from a file and look for keywords. Everything else is bookkeeping.