Stenography comes to mind. It seems it just gets mentioned in cryptography classes. Not sure that's very useful though.<p>I think machine learning is not taught enough relative to it's growing demand.<p>COBOL is a language that is still used in many places and will need people to replace those who are retiring, so I feel that is lesser known and not taught in many places.
Some I can think of:<p>- Automata theory<p>- Complexity theory (P vs NP stuff, not the one from leetcode problems)<p>- Verification<p>- Optimization using stuff like genetic algorithms, ant-colony algorithms, particle swarm, simulated annealing, etc. Not sure how to call that area. In my case it was an AI course.<p>- Fuzzy logic<p>- Scientific computing and Numerical analysis (CFD, finite elements, etc)<p>- Information theory