I think that may be because, in mathematics, it's hard to "follow the thread". For example, while programming, you can take a program (or a technique) and start reading the code, following links on Wikipedia, and you will eventually catch on. That is, you can do a top-down approach without many problems.
However, doing that in mathematics is way harder. It's not easy to take a paper, read it and start searching for concepts you don't know in Wikipedia: they usually require other base concepts and ideas which are not easy to understan. Sometimes those concepts are not even mentioned becauase the author just expects every mathematician in the field to know them, but to the layman it just looks like magic.
So in maths you need a bottom-up approach, and that's hard to do alone. You need someone to tell you what to study next and why, teaching you the applications and the related fields. Doing it alone is way harder than in the university.
So I'm a self-taught programmer, and this attitude annoys the hell out of me.
1. EVERYTHING requires self-learning to be more than mediocre. In fact, the more I learn about other fields -- engineering, medicine, law -- the more I realize those fields probably actually require MUCH MORE self-directed learning than programming. It's just that this self-learning is much harder to do in isolation without at least a college education. E.g., try teaching yourself any of the traditional fields of engineering with only what you learned before 10th grade. You'll find it's much harder than teaching yourself programming. Whereas you can easily land a developer position with things that the average pre-calculus 11th grader can pretty easily teach themselves.
2. College-educated people who didn't start programming until 18+ ALSO do a lot of self-learning. The difference between them and me (or anyone else who self-taught as a kid) is that they could learn in 1-2 years during their 20s what it took me 4+ years to learn in my pre-teens/teens. Which there's absolutely nothing wrong with. I called it reading tutorials and messing around at night while they called it reading a textbook and doing course projects/homework assignments. I called them high school friends and IRC budddies while they called them TAs. But the actual content of the work and the amount of external direction provided is about equivalent.
Just because programming is simple enough that you can learn how to do enough to get a well-paying job before hitting 16 doesn't mean that people who go through a college degree aren't also doing a ton of self-learning alongside lectures.
If you read my statements carefully, I said exactly the same thing.
The main thrust of my post was that all good Xs are self-taught, for all values of X.
That's the primary point of disagreement between us.
Lots of self-teaching happens within the confines of formal education. And almost all learning that happens outside of formal education is done via some form of instruction or another (books, tutorials, video lectures, etc.)
You can't really make a living off of being a self-taught mathematician, whereas you can by knowing how to program, and run your own business.
The only way to make a living as a mathematician is to into academia, so that why you see all mathematician in academics. Basically it isn't that academia produces mathematician, although it helps, but that it attracts mathematicians. Just as, say, Y-Combinator attracts good startups.
I would guess the more applied math you care about / the closer to software your math is, the better you can do as a self-taught. I actually know of one guy who transitioned from an engineering ph.d. to teaching applied math doing self-taught / working on fluid dynamics in aerospace, but I expect the examples of someone doing this in more abstract / pure areas are extremely few.
Businesses interface socially with other entities (individuals, governments, corporate customers). That social interface will always be 99% report/client service/cursory analytics and 1% hard science domain expertise. That's just the nature of business.
It could be different in a government lab, a think tank, or a boutique consultancy, and it's definitely different in organizations like prop trading firms that do not interface with outside entities in the way that almost all businesses do. But all of those things also place a much higher value on employing people with significant math maturity and hard science expertise.
Did I mix up greater-than, less-than again at work? Well, I'm getting opposite behavior. The errors make themselves apparent. I can play around with it, try things, and get basically real-time feedback as to whether I'm doing it right. What the hell is a monad? Well, here's a problem that is basically crying out for a monad solution.
I've often wondered if automated theorem provers (Coq and the like) could be useful for this. Sure, it requires learning Coq (or Agda or ACL2 or whatever), but it seems that it might be worthwhile just as a way to sanity check one's work - somewhat akin to the way a compiler "checks your work" when programming.
This is an interesting contrast with my experience with learning programming, where, it doesn't matter how much formal education / training you get, you're still going to have to do a massive amount of self-learning before you can hope to achieve excellence.
All good programmers are self-taught. No good mathematicians (currently) are. I wonder why this is. Probably boils down to what 'math' is trying to accomplish vs. what 'programming' does.