What about operating systems, architecture, compilers, networking, and the like? I have seen people argue that computer science is the more theoretical side of things, but many university CS programs cover both systems and theory (or sometimes skew to one side).