Alexander Dyumin
...
This is introductory course on automata theory with major focus on automata application in compilers. Course intended for undergraduates with specialization in computer science and information security.
Strong programming skills (c/c++ pref.), good understanding of algorithm foundations (including graphs) and data structures, basics in math.
...
No, but some books as "Dragon Book" or Introduction to Automata Theory, Languages, and Computation (3rd Edition) by John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman will help