> Out of 100 people who call themselves autodidact CS people, how many are like the ones you describe, who spend years to work their way through CS theory books to the extent that would be required by passing exams with good grades?
Admittedly I've only personally met order dozens of them or so in the course of a decades long career, which is why I try to snap them up when I find them. I said it's a powerful signal, not that it's common or even an advisable path for those with alternatives.
> My CS education did have a lot of difficult math that I enjoyed but in a running-a-marathon way, not in an eat-a-piece-of-cake way.
Makes sense to me, I enjoy it in a hitting-a-new-max-lift kind of way, which I imagine is pretty similar. I prefer to associate with people who, degree or otherwise, derive joy from improving themselves both mentally and physically.
> And it's not just calculus and analysis, but also graph theory, complexity theory, abstract algebra, linear algebra, complex numbers, formal languages and automata, information theory, theory of compression and encryption algorithms, signal processing like Fourier theory, control theory, optimization and machine learning, and various other things you learn here and there, such as Petri nets, quaternions etc.
The predicate calculus[1] plus analysis is sufficient for effective study of every sub-discipline you list. Obviously I assume proficiency in algebra as a prerequisite of analysis. Complex numbers and quaternions become far less intimidating when you realize they're just 2 or 4 dimensional state spaces, which are trivial in scale and potential complexity compared to what any computing scientist deals with.
> And also, outside of extraordinary life circumstances, why not get admitted to a university anyway, if you're so enthusiastic about all this theory stuff that you'd learn it to good-grade level just by your own motivation anyway? For example in Germany, university is free and if you prefer you can even skip all the lectures if you don't think they give you value and just take the exams, while studying in your preferred autodidactic fashion.
Deutschland ist doch voll geil, aber die meisten von uns wohnen nicht da.
> My default assumption, unless convinced otherwise by evidence, is that self-taught devs can put together functioning code and have familiarity with CS terminology but only a vague folk understanding of the details.
Funny, that's my default assumption for all CS grads who have a degree from anywhere other than continental Europe (including Russia) or one of the most elite US or UK programs. I had to stop asking "write a binary search on the whiteboard" as an interview question because after five tries nobody managed it correctly and they all had degrees from good CS programs.
[1] I assume you are German and CS programs in Western Europe are generally, especially with respect to theoretical rigor, superior to most in the USA, so perhaps you'll understand that I mean "predicate calculus" in the sense that Dijkstra and Scholten used in the tradition of Leibniz.