I am still afraid of calculus..
The type of math you need for CS should not be too difficult after you get some intuition in programming.
In combinatorics, for example, you just need a clear head to think through the cases, just as you would do when writing a program.
Also, for PLT level stuff, I would say being gifted just makes grasping theory easier, but it's hardly essential.
I've been doing professional software development for 10 years but his explanations finally made some very basic things click like they haven't ever before.
The issues in compiler construction and optimization are orthogonal to those observed in designing programming languages, type systems, theorem provers etc.
Systems will be a better idea, or its own category.
For those that dont know: Maarten van Steen worked directly with Andy Tanenbaum and IMO he was one of the best if not the best teachers at my uni.
There are many other universities on it as well that I normally don't see. It would be amazing to see if more people have recommendations from lesser known online courses.
Being on GitHub, this is probably a problem that could resolve itself with some PRs.