| > learn as much Mathematics as possible because this is how things work, I disagree: I spent 10 years in math and theory, ending up in grad school at Berkeley. I took something like 6 semesters of Calculus and I just about never use any of it. It was mostly a waste of my time, and the further it got form computing, the more it was a waste of my time. I certainly regret terribly how much of my time was wasted by listening to those Modern ("pure") Math assholes. Note that Modern ("Pure") Math is distinct from Numerical ("Applied") Math which is quite useful if you are dealing with physical reality, but it is really just the computing approach again. The important thing is that whatever abstractions you are studying, that their value is measured by their ability to help you solve problems in _reality_. Abstractions by themselves have no value and the Neo-Platonist belief that they do just makes people pathological. Notice how friendly Numerical Methods people are compared to how nasty Modern Math people are. (Seriously: you can tell people in each field apart just by their personalities.) The feedback loop with _reality_ is what makes the work valuable and the people normal and happy. Does "infinity plus 1 equal infinity"? I can prove that the first transfinite cardinal, aleph-0, cardinal-plus 1 cardinal-equals aleph-0, whereas, in contrast, the first transfinite ordinal, omega, ordinal-plus 1 does not ordinal-equals omega. That is the formally correct answer according to ZFC (see below). Who cares? It will not help you with anything. Modern mathematicians teach a formalism called Zermello-Frankl Set Theory Plus Choice (ZFC). It is a terrible abstraction for thinking about reality. In reality the mathematicians are now coming to computing people to ask for help proving their theorems formally using Calculus of Constructions. That shows that the computational approach is better than the mathematical approach. Computing has literally beaten mathematics at its own game. My former boss ended up as Chair of Computer Science at Stanford. His specialty included formal methods for ensuring software correctness. Pretty mathematical, right? He likes to brag that he cannot remember the formula for the circumference of a circle. That's some pretty basic math to not remember and be a specialist in formal methods at Stanford. If you want to code, do that. Do not let anyone tell you that any work in reality needs math. It is the other way around: math needs reality or it is just useless junk. Some formal methods may help, but only if it bubbles up from reality. Always make sure you work is in touch with reality. The way to do that is to always work on real problems and only use abstractions that help you with real problems. In other words, just build something that helps someone solve a problem in reality. Everything else is secondary. Once you see your work help someone in reality, you will never forget it and you will have the path towards a life worth living. |