John Doe · 2018-07-27 16:25
I'm a beginner programmer that feels often I can't read certain papers because I lack any mathematical knowledge. There's a barrier that I caused to appear by dropping out at my freshman year of high school. My arithmetic is poor, I can't remember anything about algebra, so I need to fix this. I want to be able to understand higher mathematics at some point. I know this might take a long while, but where should I start? What would you recommend? What books or should I head to khancademy and just go through that, or what?
I'm open to any suggestions, I just want to be able to reach similar levels of my fellow programmers. I have to hide my lack of mathematical knowledge and it's incredibly humiliating.
Dox · 2018-07-27 16:31
Khan Academy is as good as anything, I guess.
>I just want to be able to reach similar levels of my fellow programmers.
There's actually very little math involved in programming. You can have a full career and never use anything more than primary school arithmetic. You won't be able to read a lot of computer science papers, but that's not what programming is about.
Cat Mother · 2018-07-27 17:54
i'm in my third year studying math you can ask my a question if you want
Nguoi La · 2018-07-27 18:35
>>8694
this is mostly true (unless you want to do the more hardcore "computer science" stuff like machine learning or crypto). you might not need as much math as you think. maybe spend more time reading programming textbooks if that is your ultimate goal.
>>8693
The 2 areas of mathematics that are most useful to a programmer are linear algebra and discrete math/logic. Discrete is probably more useful at a foundational level, but only the beginner logic/number theory stuff. Linear algebra is essential if you want to do anything on a gpu... or really do just about anything computationally expensive. Start by revisiting basic algebra. Pay special attention to anything involving factoring or finding zeros of polynomials. Technically, if you have a really good understanding of high school algebra, you should be able to go straight to undergrad linear algebra.
The problem you're going to run into is the "language barrier" between high school level algebra and university level algebra. Most students have high school calculus as a kind of gradual transition between the two, but you won't. After you're comfortable with high school algebra, try to work through an undergrad discrete math textbook. Discrete is treated in university as "baby's first real math", so hopefully that will give you what you need to understand an undergrad linear algebra textbook. You can stop reading once you get to the analysis stuff (sequences/series/convergence/etc.). All you really need is basic logic/number theory and the meta-knowledge of "how to read proofs".
Koos van der Merwe · 2018-07-27 23:40
>>8693
I second this:
>>8694
Furthermore, most of Mathematics is obfuscated behind terminology. I can't even understand my nephew's new algebra textbooks, despite me knowing full well how to do everything in them. I have to go back to all prior chapters and learn the "idioms" and "terminology" just to grock what a question is asking, and how they want the kids to think on it (and this isn't even common core clusterfsck).
The thing is: All mathematics are like this. Once you learn how to decompose the BS symbolic scribbles into code (and ultimately repeated addition, subtraction, compares & branching), then the difficulty falls away. The higher level mathematics in "Computer Science" are rarely used. Though, it's good to understand at least statistical derivations (calcuLust) and "Big O" notation.
Physics is the same way. I once asked a physics professor what the "e" was. It was Euler's Constant in one place, another place in the same equation it was "epsilon" the "error tolerance", another place "e" stood exponentation function, and multiple additional meanings both present and not present on the board.
So, I said:
> basically, the equation is useless to explain anything to someone who doesn't already know what it is you're trying to accomplish? Congrats, you just encrypted reality.
IMO, the Physics is kneecapped by the practice of using "invisible" operators such as multiplication: xyz = x * y * z, which means they can't have a multi-letter variable name (time could be the multiplicative product of temperature, square root of negative one, minutes [or millennia] passed, and the number of perfectly spherical frictionless eggs digested). We've long since ran out of symbols for things everything in higher mathematics and physics, so higher learning is deeply obfuscated by ambiguous terms. It should all just be written out longform in pseudo code... I think the reason no one has done so is actually to keep AI from becoming more powerful too soon... and also a video recording + PC would then put most professors out of jobs as everything would be self explanatory.
P.S. I recommend "Principia Mathematica by Newton" and everything Euler wrote.
P.P.S.: Tau > Pi
Project 2501 · 2018-07-28 00:18
conventions in math are violated just like in ordinary language. if things were linguistically consistent, then you'd just annoy the fuarrrk out of people who study the theory. we use the language we want to use. the basics in math are so basic it can be explained in a million ways. some people prefer temporal language, others like atempora. properties are usually stated in an object oriented way, like "equation" and "manipulation" although it's an abstract thing.