You also have definitions named after common intuitions like openness and closeness in topology that end up confusing people because after some thought, mathematicians have found that some sets are open and closed at the same time, but that's not possible in most physical objects.
Ultimately, I think that the unfamiliar-name problem is just something that people have to get over with. We learn all the time the difference Coca-Cola and Pepsi, Apple and Google, and so many other unfamiliar names.
It's open sets which are badly named. Open sets are used for distinguishing between points - i.e., two points (x,y) are topologically distinct if you can find two disjoint open sets x \in X, y \in Y with X \cap Y == \emptyset. Coming up with a collection of sets which are good for this purpose is totally NOT the opposite of being closed. "Distinguishing sets" might have been a better name.
"Sum of this set from 1 to infinity"
They use a capital Sigma, and scatter the symbols around it. The terms exist, but they're not present in the equations!
To pretend that anything above the most fundamental abstractions doesn't involve domain-specific, obtuse, arbitrary lingo is just silly.
This is both for improved civility (so that actual discussions can take place), and so that people flesh out their counterarguments more.
I apologize to adrusi for my response.
Computer science has only had about 50 years to develop - we may have seen our Issac Newtons and Leibniz's but once we have 200 years of Gausses and Riemann's there'll be a lot of additional abstraction that's implicit depending on which subset of study you choose. CS will fork off into various subsets just like any other formal science, and a greek symbol to someone who finished their PhD in complex analysis might mean something entirely different to someone who's been working specifically in combinatorics for 30 years. At that point, our level of abstraction won't be pieces of paper on a stack.
It's not exclusive to CS or mathematics, ask someone who hasn't taken O-chem what "R" means in a Lewis Diagram. Ask a non-linguistic (of either type (ugh pun not intended)) what a 'terminal symbol' is. I'm sure they'll answer differently from someone who works at the airport, that's for sure.
The analogy isn't 100% precise, though: If structures with the same signature (and perhaps equational laws) form the objects of a category, then what exactly are the morphisms? There are several possibilities. My favorite one is pre-ordering structures by the asymptotic complexity of their operations. (Every preorder can be viewed as a thin category.)
I believe the usual story is that Kronecker called it a delta function, then someone other than Kronecker decided to call it a Kronecker delta. It would be ridiculously presumptuous otherwise!
Software development still has plenty of algorithms and data structures named after their inventors. Could you guess what a Duff's device is based on the name? How about a Merkle tree? (Although arguably you could call the Merkle tree a hash tree and get the point across)
That the original article is directly trying to convince people that programming and math really aren't that different, but you do have to learn the other's culture?
'awk '{print $1'/'$2}' | xargs curl | jq .'
None of the those programs things have any meaningful names. but they're all used in a common programming, or scripting, expression.
If someone says "Oh, you should use Hadoop for that", this is a proposal to solving a problem.
Print is semi intuitive, but it could mean so many things. Print in awk vs print in tcsh might have entirely different behavior. Is there a \n appended? How do you delimit it? It might give you a vague idea, but you're still going to have to go to your informational resource of choice in order to figure out: a) the parameters to pass to it, b) the output formatting/delimiters/implicit \r or \n's, etc. (e.g. Hell, in Python 2 you add a comma to prevent a new-line - I'm not even sure that syntax was influenced from (though logically I can understand the comma-suffix implies additional components and thus you want to suppress any line-break), I'd be hard-pressed to the etymology of that).
Brings me right back to the 'functor' issue. But hey, at least a ML functor is entirely different from C++. They overloaded the term (like delta or mu might be overloaded in math) but at least I don't have the risk of using it and getting 'partially consistent' behavior. (For example, having print exhibit the same properties as bash would plus a side-cases added by the author as 'feature enhancements' which work great for him, but if his side-project gains traction will just lead to more ambiguity.)
Oh! "curl" is "c url". It's taken me several years to understand that, and I knew exactly what it did! I imagined my data "curling" off the website, down the intertubes to my filesystem.
:)
There are two delta functions commonly used in mathematics, the Dirac Delta function, and Kronecker's delta. One is a discrete function, the other is continuous.
Kronecker, a mathematician who was obsessed with the finite, who tried to destroy Cantor's Set Theory, and to some extent, Cantor himself, is unsurprisingly the one associated with the discrete version.
Dirac, a physicist, used in in his book on Quantum Mechanics, and finds lots of use in Physics. Unsurprisingly, it's going to be the continuous version of the thing.
In mathematics, the history of ideas is caught up in the function of the ideas. Sometimes, to understand something, the easiest way is to look back at the problems that resulted in the development of the idea. In times before source control and git blame, it's actually quite helpful to attach the inventor's name to the concept. This is not, of course, the primary reason for the attachment (and many times, the history is more complicated and interesting), but it doesn't mean that it isn't useful.
Regular mathematical notation is like what you would get when you run a program through one of those obfuscators that blows away all of the comments and whitespace, reduces variables down to a single letter, and renames all of the functions to single letters.
But we can't change it because it would confuse all of the existing mathematicians who spent years memorizing all of the quirks of the system.
A great many things in mathematics do have descriptive names, although it often helps to know a bit of Latin or Greek or to "get" the metaphor. That said, I don't think naming things in mathematics is particularly akin to naming things in programming. In programming, a good name can tell you enough about an object to be able to use it without understanding anything further about it, but in mathematics it's rare to be able to get much use from an object unless you assimilate its definition and the major consequences of its definition in the context you're working in.
There are few "user-facing APIs" in mathematics, and mostly for good reason.
The problem extends beyond mathematics, to essentially everything except programming. And in fairness out of all the fields with shitty names, mathematics has the best excuse: unlike the natural sciences and engineering, math is completely abstract. But programming is also pretty abstract, and yet we don't call stacks Hawk-elbower's double-u structure! No, we notice a semantic similarity between our abstract concept and something more familiar, and we come up with a monosyllabic, five-letter word that conveys a lot of information about the construct to someone completely uninitiated. This both makes it more approachable and easier to learn, serving as a mnemonic device. And once you've internalized it it makes no difference whatsoever.
I hear people whine that naming abstract concepts after concrete objects will only give people a harder time thinking abstractly. Bullshit, I say: have you ever heard of a novice programmer thinking that stacks are only good for representing stacks of paper or dictionaries for looking up definitions of human words.
I understand that naming things nicely in math is harder than in programming, and that in some more cutting-edge branches there might simply be no good analogies to draw, but I don't think it's impossible for more mundane topics. Math professors teach by drawing analogies and thinking of applications all the time. In any case we can do a lot better than "Kronecker's delta function".