4 ms·
People always seem to forget that mathematical notation is designed to make algebraic manipulations easier to follow. It's not really intended as something that
by shiandow 3y ago
People always seem to forget that mathematical notation is designed to make algebraic manipulations easier to follow. It's not really intended as something that makes sense on its own, it's mostly physicists who think something like E=mc^2 should have any meaning.
The more pure the mathematics the shorter the scope of most variables. Typically a variable is defined just before it's used, with a scope no longer than the proof or derivation it's in.
Also some of the choices in this article are just plain silly. Such as using P as both variable and index, and then use it for the covariance matrix when the precision matrix is the exact inverse.
- toxik 3y agoIn computer science, we straddle this divide where the usual way to describe things in scientific literature is using algebraic notation, but the usual way to actually write up a program is to use meaningful variable names. It's not K_i, it's current_gains or something like that. It leads to a funny kind of style where especially computer science-related fields start writing K_{current} in scientific manuscripts, and are then chided because that is not how you use subscripts. The reverse is also true, theory-adjacent code tends to use a lot more terse naming conventions.
- michaelrpeskin 3y agoI often work with a guy who's a pure computer scientist. He communicates in LaTeX and pseudocode only. I don't think he could find a compiler if he tried. What I've learned to do is keep his notation whenever I implement something. I start the function with a comment that says what paper I'm referencing when I implement it and then comment all of the one-letter variables. (In this case I would use K[i]). Usually the stuff I'm implementing is complicated enough that reading the code without reading the paper won't have much meaning. And if you're reading the paper, it's good to have as close to a 1-1 representation to help give confidence that I implemented it right. I've had non-zero times where I took his pseudocode, pasted it into my IDE and did a search and replace of begin/end to braces and "<-" to "=" and it "just worked" on the first try. I always found that amazing that he could write this stuff without ever trying it (outside of his head).
- Kim_Bruning 3y agoJust DO let me have my k_P, k_I, k_D please! See also: * r,g,b,a * h,s,l * x,y,z
- atoav 3y agoTo be honest a lot of things that are incredibly easy, incredibly intuitive — things of the "I could come up with this myself"-kind — can seem impenetrable when written down in mathematical notation. If you want people to understand, you skip the mathematical notation and use pseudocode, or at least you start with an explaination and once people know what they are looking at you go into the math notation. I understand that mathematical notation can be very practical for describing a certain class of problems concisely, but especially if you teach or explain things, consider that being concise is meaningless if people don't understand what you describe. Sometimes my feeling is that this is on purpose. People not understanding what you are doing (but you come across soo smart), is a feature to many. Even better: The layperson cannot tell whether you are talking utter gibberish or using the most precise language on earth. I, however, think you can recognize real smart people by the phenomenon that every room they are in seems to become smarter in total, because they lift people up in their wake of understanding things so deeply, they can just break them down into their very simple, managable parts and translate obscure domain-specific languages into something people can grasp. I too can go into deep domain specific lanuages, be it in philosophy, electrical regulation, film theory, programming lingo, music theory, control theory etc. But what is the point of doing that without making the person opposite understand what you're waffling on about? Because either you will seem like a knowledgeable person that has a total lack of self-perception or like a brick that doesn't care what message reaches the person opposite as long as rhey can hear themselves talk. That being said: Domain-specific language can be okay if it is used between people within that domain. But I have met many physicists or mathematicians who also think math notation sucks, so maybe there could be something better.
- bonoboTP 3y agoA great positive example would be Andrej Karpathy.
- CamperBob2 3y agoGreat explainer -- incredibly so -- but not awesome in the variable-naming department, having just gone through his ML videos.
- 3y ago