Comment by steego
5 years ago
I believe you that it wasn’t intended to be insulting.
But let’s think about it.
I feel pretty confident that most people on this website are capable of learning the core 2400 Chinese characters in a year if they spent a few hours a day and that’s literally a foreign notation. A lot of people learn new languages all the time.
Kids who don’t want to learn calculus, learn calculus every day. The notation isn’t just awkward, the concepts are too. Yet they learn it.
What we’re talking about is a small notation. It’s a handful of symbols. They work predictably and consistently and the people learning it are usually familiar with the subject on some level.
It’s off-putting because it appears foreign, but the concepts and actual mechanics are already familiar with most of these readers. They just need a Rosetta Stone to help get past the initial awkwardness.
When you look at it from that perspective, it is kind of insulting use a hyperbolic word like insurmountable to a group of programmers.
Many chose not to learn it because they don’t want to be bother or don’t see the value investing their time.
Throwing words like insurmountable around seems like it breeds learned helplessness.
This is coming from my own experience trying to teach theoretical concepts via notation to very smart engineers. I won't argue vocabulary, but I stand by what I say: it's an insurmountable barrier for many people.
Teaching calculus to children is a good example of why. They have a teacher to hold their hands and answer questions 40 minutes a day with mandatory homework assignments.
If you study concepts on your own, you do not have this luxury. Its very difficult to internalize notation when you do not use it every day. The problem is not the notation itself, but the fact that no notation can be categorically searched and referenced. It cannot be typed or entered into google easily. It is rarely consistent between authors, which is free of problems if you are already fluent in the notation.
Sometimes you can get away with "what does upside down A mean" but consider something like `\forall n \in \mathbb{N}`. Imagine if you simply had `unsigned int` (I don't want to debate the exact implication of unsigned int versus the naturals, but it should serve a point).
When I have tried to explain relatively simple notational structures to working engineers, the universal feedback is along the lines of "I wish there was a good reference for notation because I can't understand this or keep up with it."
Pseudo code, or something akin to it, may be more ambiguous but is much easier to grok and document.
As an aside: something that constantly irks me is the celebration of terseness and convenience. This plagues many texts and robs novices and experts alike from understanding. Notation that is terse to the point of resembling arcane incantations is a problem, and it bothers me that academic publications in the applied sciences don't recognize it as one.
I absolutely agree with this. My background isn't at all mathematical, but I've ended up working with machine learning. As part of that, I naturally want to understand what I'm doing, so I try to read the papers/textbooks/etc.
The problem I run into, again and again, is that all the notation is presented as already understood, even in introductory texts. It's not explained, and it's not clear where I'm supposed to go to get it explained. I can't search for it directly because it's a symbol, not a name for the symbol, and if I do manage to find the name, I'm left to wade through all the different contexts in which it might be used to mean something to find out which it is.
It's not an insurmountable barrier because I'm incapable of learning. It's an insurmountable barrier because I can't find a reference to learn from that doesn't already assume I know all the answers.
I am pretty sure anyone for whom the notation in `\forall n \in \mathbb{N}` presents a barrier to learning meaningful amounts of type theory will have greater problems from lack of mathematical background.
The mathematical background required is just familiarity with notation... which is my entire point. It sounds like you don't have a good handle on the mathematical pedagogy required to be a good engineer today - it's not what you could describe as extensive