4 ms·
I did pretty well in math, both in high-school and in university, (Comp Sci degree, with Math a compulsory first-year subject), and when I try looking at a pape
by imron 10y ago
I did pretty well in math, both in high-school and in university, (Comp Sci degree, with Math a compulsory first-year subject), and when I try looking at a paper describing an algorithm in some Comp Sci related field it's literally all greek to me.
I end up spending large amounts of time figuring out the meaning of all the various symbols in the paper and how I can map that to an actual computer program.
Thankfully I have enough Math in the back of my mind to work through it, but good luck getting in to the really interesting things (e.g. machine learning, 3d graphics, whatever) without having a good mathematical background. Without it, you'll lose first hand access to almost any paper written on the topic.
- douche 10y agoIs the problem there the actual math, or the obscure, arcane notation that's used to describe it? Combine that with the frequently terrible and all-too-often incomplete source code that's provided as a reference implementation...
- semi-extrinsic 10y agoIt's not arcane notation, it's content-aware compression at work. When a mathematician sees a small greek delta with subscripts ij, they immediately know it's the Kronecker delta. If every paper would explain every convention and notation in the field, all papers would be huge and much less readable for those working in the field.
- agumonkey 10y agoIn other words, slang.
- varjag 10y agoNo, the vocabulary. Slang is an alternative language for common concepts, not the case with math.
- dllthomas 10y agoJargon.
- gilgoomesh 10y agoSlang is colloquial, local and rapidly changing. Technical language is formal, usually widespread and entrenched.
- coldtea 10y agoNo, the very opposite of slang. Slang is created and perpetuated mostly for fun or historically for hiding from others (e.g. gay slang, black slang, thief slang), changes quickly, and doesn't compress much information, mostly encodes a word with a different word. The only common thing with slang is that its a dialect constrained to a specific group of the population (mathematicians).
- Someone 10y agoIndeed. Making it easier for beginners to read is like writing: // This is where your code starts executing int main( int argc, char *argv[]) { // repeat 10 times, with i counting up from zero up to nine for( int i = 0; i < 10; i += 1) { ... } }
- imron 10y agoYes, it's very much this. There is so much established convention and if you don't know that convention, then it involves a non-trivial amount of time to work through it and figure it out.
- Xcelerate 10y agoI remember the first time I saw \mathbb{R}^n. I thought "What the heck does that mean?!" I wish more time had been utilized in high school to explain all of the notation that I would need to know later on. It's difficult to Google symbols. (More recently, I spent a few hours trying to figure what a box with a times symbol in it means — in the context of the paper I was reading, it turned out to be the outer tensor product of linear group representations. Who would have guessed that?)
- semi-extrinsic 10y agoFWIW, crosses inside something is standard notation for exterior products. And, how do you introduce that in high school? Would you be able to wrap your head around the generic concept of exterior products back then?
- imron 10y agoThe problem is rarely the math, and when it is, I can always find the explanation behind it. It's more the notation (edit: and yes, the content aware compression) - I'm sure it's completely obvious to people who see/deal with it regularly, and I can appreciate its compactness, but unless it's a really simple one, the raw equations are just gobbledygook and often it's only after I've mapped it to some sort of pseudo-code that it starts to make sense for me and I can figure out what's going on. It's a point of pain for me whenever I read a technical paper - almost to the point that I've toyed with the idea of building a 'math equations for programmers' site that helps deconstruct mathematical equations to programming form.
- kernelbandwidth 10y agoAn anecdote from the other side: I trained in Mathematics before I ever did any serious programming, and have taken only a handful of proper CS courses from a theory-heavy institution in math-heavy areas (i.e. they were math classes first, and programming was mostly an afterthought). The result is that I actually find pseudo-code descriptions of algorithms far harder to work with than equations. Without a good overview, I just see a collection of vaguely related code-statements, and not a design until I've put a lot of effort in. On the other hand, I can usually grasp the point of something expressed as an equation much more rapidly, if only because my previous experience gives me more heuristics to rely on.