Check out this short tutorial on mechanics with calculus that I've written. It would make a good first introduction to physics[1]. There is another one for linear algebra[2].
In general I think programmers shouldn't fear the math and physics: yes it's hard to understand at first, but you can pick up things pretty fast. The ratio of "knowledge buzz" to effort is very good when you're learning physics. A symbolic computer algebra system like SymPy can be very helpful for "playing" with math expressions—here is a third tutorial on that[3].
From the fist paper: If you want to learn more university-level math and physics, I invite you
to check out my book, the No bullshit guide to math and physics
I did math in the wrong order. I first was "exposed to it" as an engineer undergrad - didn't care at all (just wanted to code) and barely passed eng. math.
After working for two years, went back and did undergrad physics courses (including math for phys) and started to "get it".
Then went on to a PhD in general relativity - which is a LOT of math. I went back to software and most of it leaked away.
I am now trying to get it back (20 years later) - as I resurrect a Maple package for GR, grtensor, which I co-wrote as part of my PhD. Curved space is a beautiful thing.
Penrose's recent book reminded me of his wonderful "The Road to Reality: - which is a great tour of math leading into physics.
Thanks for the interest. It is quite an odd career trajectory.
I was torn about physics vs engineering when I went into undergrad - and the advice I got was one led to more certain income - so engineering it was. However, I always felt I had missed out on "cool stuff". After working for two years, my wife decided to go back to grad school in Kingston (2 hours away) - after a year of long-distance marriage and frugal living, I quit and took a year of random physics courses (basically third year physics). I managed to get a summer job with a GR prof, who wanted me to write some Maple code - this became an an early version of grtensor.
At this point I had finagled a spot in the Master's program at Queen's, but my wife was accepted into a Phd at McGill/Montreal - so we went there. I took another term of undergrad courses (4th year phys) and found a prof who needed a student who could code - and I was accepted in the Master's program at McGill doing experimental particle physics linked to an experiment at Fermilab.
After a year at McGill, spouse decided her supervisor was not doing the work she thought and she wanted to head back to Queen's. I scrambled to finish my MSc and then went to Queen's to start a PhD in general relativity.
In a weird "Forest Gump" moment - the time at McGill attached to the CDF experiment at Fermilab means that my name is one of the 500+ names on the paper announcing the discovery of the top quark.
At Queen's I studied GR and astrophysics, leveraging my coding ability into making tools GR researchers use to this day. After the PhD, we had a young family and didn't like the look of the post-doc grind and the constant moving/low-pay that it entailed, so went off into the high-tech world.
I've spent 20+ years in hi-tech s/w. Joined yet another startup two years ago. It's still really fun. Thinking about physics is also really fun - so I try and keep a stream of physics-y side projects on the go.
Maple has since evolved and GRTensorII has gotten stale. One prof has been staying on an old version of Maple since he relies on GRTensor - worrying that when his computer dies he would have to stop using it. I figured it was time for a fix up. This is what I am doing now. I recently took a "sabbatical week" to jump start the exercise. Hopefully it will be public by the end of the year.
In my experience, it's a moving goal post. Physicists usually start off with the goal of explaining certain natural phenomena. Over the decades the specific parts of math this entails has evolved rapidly, as new phenomena become novel.
One might naively think that only "some" parts of math are useful for physics, but over the last 2-3 decades, many connections between physics and math have been discovered, that has brought the communities closer together, reversing the trend in the middle of the 20th century. For a very interesting take on the interplay between physics and math, by one of the masters of math/physics, see [1].
To quote an excerpt from Arnold's talk: " Mathematics is a part of physics. Physics is an experimental science, a part of natural science. Mathematics is the part of physics where experiments are cheap. "
Somehow I have a strong feeling it's the other way around. When trying to really understand the ways of Nature, you end up having to do a lot of calculations. Then you get quickly drawn into the depths of very complicated mathematics. Finally, you realize that there is nothing in (theoretical) physics that is not mathematics. Historically, much of mathematics evolved in connection with physics, but this fact does not change anything.
The way I look at it is this: mathematics is just formalized perfect reasoning. Its job is to get you from a thing you assume to be true, through steps of formal inference, to a new thing that you can be sure is true if the original assumption holds. You then keep on chaining this, so from a small set assumptions you enumerate all the facts that follow from them.
Physics is a field of study that does experiments to identify what things are fact in our universe, and then tries to pick such a subset of math that best fits the observed data. If further experimental results deviate from what the chosen mathematical model predicts, physicists will pick a different model, up until the maths align perfectly with what they see. The reason physicists use math is thus simply because alternative to math is hand-waving and guessing, and physics is a serious field.
As a mathematician myself I'm inclined to say "everything's applied math", but it's really not the case. Physics studies and seeks after the basic laws that govern the universe. Physicists find mathematics very useful in these pursuits. But ultimately physics studies the universe and employs mathematics thusly. In theory, physicists could use other tools than math if those other tools were as useful or (preferably) more useful. I like to think of mathematics as the study of logical systems. That's how you can have mathematicians that specialize in biology, physics, music, and so on.
I studied physics in undergrad, and took a few grad courses. I also minored in math. The reason I dropped the math major to a minor was because of the amount of time mathematicians spent proving obvious things. Physics uses math, the way that a car mechanic uses a wrench without worrying about its atomic structure.
At the beginning of one particular interesting class on quantum mechanics, the professor wrote down a few shortcuts on the board: how a sum of a certain series collapses, which parameters can be ignored at low or high velocity, etc. It was glorious.
Also my big takeaway from this was that physicists really don't like non-linearity. If something cannot be described as linear, it will be described as a harmonic oscillator 99% of the time. The exception to this is statistical and simulation physics where you can do whatever you want and just look for emergent behavior.
> Physics uses math, the way that a car mechanic uses a wrench without worrying about its atomic structure.
I disagree. The way I see it is that (non-mathematically inclined) physicists often try to fix a car using a wrench and while they get the car working in the end, it's actually not the wrench that did the job (as they claim) but the fact that they kicked the car in anger multiple times that accidentally rearranged some of the screws in the right way. Put differently: Physicists often try to derive statement C from statement A while silently assuming the non-trivial statement B which is actually the crucial point and contains important assumptions about the physics. Or, even worse, they sometimes "prove" statement C from a slightly rephrased and trivially equivalent statement C' that already (silently) contains the crucial statements A and B and they don't even notice that what they're doing is tautological and doesn't prove anything.
And then there're those cases where they want to derive statement A from statement B and make a really crude (and actually completely wrong) argument to do so when actually B follows from A and not the other way around, i.e. they started with the wrong assumption (B instead of A). Often, A is a very general math statement and B is a crude physicist's version of it, applied to a special case.
I guess what I'm saying is: A lot of physicists suck at logic and confuse cause and effect because they don't know enough math. Certainly, this might affect theoretical physics more than applied or experimental physics where results are usually well-established and all that counts is the numerical result. But in theoretical physics it really clouds one's view of what is actually happening.
Source: I'm a student of theoretical and mathematical physics.
> The reason I dropped the math major to a minor was because of the amount of time mathematicians spent proving obvious things.
I think this is a poor reason to drop a math major. The point of a majoring in math isn't learning "obvious things." Rather, the point is learning how to prove things—it shows you how to get from point A to point B when the path isn't immediately obvious.
Also there are many things a lot of people may call obvious, but is not quite so obvious.
I actually went the reverse direction, from theoretical physics to mathematics, because I was disappointed with the lack of mathematical rigor, and that the workd of mathematics is a lot more interesting once you get to proofs.
The bullet points this article (and the one by Chad Orzel it links to) mentions are the common most used things day-to-day by basically anybody doing physics. However, I think stopping at that level of mathematical background would make reading a lot of the existing literature hard. Woit mentions complex analysis, but at least that usually comes up in mathematical methods classes, at least at the level needed to understand the arguments where it is used. Some math that I often found myself wanting more of includes differential geometry (I find physics introductions to tensor manipulation to be very heavy on mechanics and terrible on intuition for what you're actually doing) and functional analysis.
Both articles leave out numerical analysis or scientific computing, which I think is a huge gap. I certainly felt like my education left the impression that these things were way more straightforward than they actually are.
Agreed. I am a huge believer that you can get to answers quickly with a Monte-Carlo analysis. But I'd take it a step further and include how to solve differential equations numerically as well. You'd be amazed at how far you can get with Crank-Nichols, Lax-Friderichs, and even simple central differences methods.
Additionally a lot of stuff people use in machine learning today had its start in solving physics or communications problems numerically. Stuff like maximum likelihood detection, gradient descent, etc...
I also believe that implementing code to solve physical problems really can deepen ones understanding of physics. Once you have something you can really play with it and see where things break etc...
I did a double major in math and physics, many years ago. At the time, I didn't know if I was more interested in one than the other. I loved proofs. But I also loved the lab. So I just took all of the courses that were offered in both departments.
A few other people have mentioned that computation is missing from the list, and I agree. I was lucky that while studying my school subjects, I was also actively pursuing electronics and programming as hobbies, which drastically influenced my graduate studies in physics, and my subsequent career. But I didn't get that from my coursework.
I think that computation should be incorporated wherever possible in all of the coursework, all the way back to kindergarten. My rationale is simply that it expands the range of ideas that can be explored, and it's fun.
I was two years studying EE before I quit and transfer to CS program. I do bot regret it at all, but man am i grateful for hard math course and electromagnetics on EE. It was pretty painful, in terms of working hours and doing homeworks, but since then my brain just worked in terms of 2D/3D vision of geometry and space coordination in my head. Differential calculus, linear algebra, everything was piece of cake when I got to CS.
You need the math required to understand the language in which the current best physical theories are written. It's unknown as yet which mathematical objects will be required for their successors.
Feynman gave a whole lecture on this subject - the second or third lecture of the Messenger Lectures (much better timepass than night time TV show, second only to the Wizards Lectures and the five three seasons of The X-Files).
It seems that this is an ideal case for the Less Is More principle.
If anyone else is wondering what "The Wizards' Lectures" are, they are a set of MIT video lectures from 1986 by Abelson and Sussman on "Structure and Interpretation of Computer Programs"
Thanks! I was too enthusiastic to emphasize that the Abelson and Sussman lectures are out of the context of Physics. Nevertheless these are no less classic than Feynman's.
In general I think programmers shouldn't fear the math and physics: yes it's hard to understand at first, but you can pick up things pretty fast. The ratio of "knowledge buzz" to effort is very good when you're learning physics. A symbolic computer algebra system like SymPy can be very helpful for "playing" with math expressions—here is a third tutorial on that[3].
_____
[1] https://minireference.com/static/tutorials/mech_in_7_pages.p...
[2] https://minireference.com/static/tutorials/linear_algebra_in...
[3] https://minireference.com/static/tutorials/sympy_tutorial.pd...