this comment is right on the money on several fronts:
- the Feynman lectures are great after you already understand some of the mechanics of "doing" physics and have some other exposure to the topics, Halliday & Resnick is a better place to start on any one topic
- with infinite time, i'd always follow the approach of learning the math first and then the physics, the book by Boas is pretty good for self study of the minimum necessary math
- there's no real reason to follow a traditional grad school curriculum ala Fowler unless you need to pass quals in a traditional grad school setting
- simulating physical systems on computers is a pretty good exercise, but very time-consuming, avoid if you already spend a lot of time in front of computers
and some thoughts of my own:
- "get a strong foundation in Physics" is a bit too vague to be a useful goal, some examples of potentially better goals: "be able to pass a classical mechanics qual in the allotted time", "be able to write down the standard model and explain it", "be able to grok N papers from the X section of arxiv per week", "be able to write down toy classical field theories and calculate their predictions", ...
- if you are looking to avoid computers, try supplementing your reading with simple experiments either by buying educational kits or by hacking together things
- the books by David Griffiths (esp the E&M one) are awesome
- try to follow curiosity instead of a program: trying to answer "how do superconducting materials work?" for yourself is better than "follow the grad intro to condensed matter that's available online"
- use the physics stackexchange and other forums: asking and answering questions can be very helpful
But I'll suggest Marion and Thornton [0] for Classical. With Griffiths for E&M and Thornton for Classical you should be able to get a really good grasp on most of "physics". I'll also say that these series are upper division for undergrads. Given OP's background I think these would be fine starting points. If not, start with Halliday[1].
For grad level, the gold standard is Goldstein for Classical [2] and Jackson for Electrodynamics[3].
These types of books will give you a very strong base in physics and should enable you to branch out. Given your ML background you may be very interested in thermodynamics and statistical mechanics.
I'll also add an "out there" idea. Sign up for physics classes at your local community college if they offer labs. I say this as someone who went Physics -> CS and is doing HPC + ML. Labs really stress and force you to do analysis. Lower division labs won't ask too much, but if you go in with this intent I think you can get a lot out of it. I'm sure that if you did these lower div labs and talked to a professor at your local uni they would allow you to sit in on upper division labs (you would NEED to show that you are serious first, because these labs can be dangerous! Happy to help you learn doesn't mean happy to babysit and make sure you don't electrocute yourself or making sure you don't take a laser to the eye. TAing undergrad labs I saw enough people get electrocuted, including myself... more than once).
[0] https://smile.amazon.com/Classical-Dynamics-Particles-System...
[1] https://www.smile.amazon.com/Fundamentals-Physics-10th-David...
[2] https://smile.amazon.com/Classical-Mechanics-Goldstein-Poole...
[3] https://smile.amazon.com/Classical-Electrodynamics-Third-Dav...
He asked me how to learn physics; not how to learn some wimpy undergrad physics which doesn't give you the big picture. Hindsight my undergrad E&M book was a waste of time, and we should have just used Jackson. I still have Jackson (and Eyges) on my shelf; the undergrad book was recycled years ago.
Jackson's problems are more technically difficult than, say, Purcell's, but how much of that difficulty actually helps with understanding E&M?
Also, the look into the Feynman book QED once you have a little bit under your belt. Its a fun and pretty short read and there isn't much math at all. I also think its a fun thing to read while learning EM since it opens you mind up to the next subject down the line, QED.
Coming from Nuclear Engineering I thought it was fine.
To me that’s just a subjective list the author likes.
The replies seem a bit on the level of “...but everyone knows really.”
I always took notions like “expert” virtue signaling to mean experts seem convinced we should all learn via the timelines they did.
Uni students versed in textbook physics, linear timelines for learning cause that’s how society taught them, are also experts in working cognitive theories. Incredible.
but the prompt isn't "list some books you like" but "how should I learn" so there's obviously intent in picking those books.
English is a terrible language and taking how we use it so literally is as bad as the language itself.
(I got a Ph.D. in theoretical quantum optics, and I do have over a decade of experience teaching gifted high-school students. There is a lot of experience that works, and doesn't work, on people without prior background.)
Feynman Lectures are much a more lively, insightful, overview of physics (I started reading when I was 14 or 15 y.o.; jumped there after reading one advanced high-school textbook). While I do know people who preferred Halliday & Resnick, these were people who liked a more straightforward, even if less insightful or colorful, approach.
> learn the math tools first.
Nope. You can spend 2 years (not a joke) to get mathematics to prove Stokes theorem, in one of the more general versions. Or draw a few cubes and squares, and get there is 15 mins or so. For regular 1 dim integrals, it is a one year course of mathematical analysis, if you want to do it rigorously.
For many tools (e.g. Fenman Path Integrals) there is no rigorous math approach that is in use (at all). While, sure, you need to continuously improve your mathematical skills, my strong suggestion is first physics, then maths. Same Dirac Delta first as a trick, only later (and if you wish for math's sake) learn about distributions, Radon measures, etc.
For E&M: for introduction, totally start with Griffiths. It is much more approachable as the introduction.
> There's very little difference in undergraduate vs graduate quantum mechanics.
I don't know where to get started, but it is nor true. For quantum information - yes, you can start with undergraduate maths. For anything going into quantum field theory, you would need to know much more about Lagrangian mechanics, group representations, symmetries, differential geometry, etc.
You're out of your mind. You don't need to prove Gauss-Stokes in the general version to understand Maxwell's equations; you just need 3-d calculus, and you're done. Bike shedding the process further is silly: I could claim you don't really understand GR (or for that matter, E&M) without Hatcher-level understanding of Algebraic topology. All you need is the simple calculus theorem, such as is presented in Jackson.
> For anything going into quantum field theory....
This is a rubbish argument: yes, you need more math to do quantum field theory. You also need basic quantum mechanics first, which is what I'm talking about for a self study program. If you want to go on to fiddle with QED, you can fool around with Itzykson and Zuber (and Griffiths book) later, when you actually know how non-relativistic QM works, and how relativity works. First learn basic Schroedinger stuff and something like S-matrix theory. Don't learn the shitty undergrad training wheels crapola; do the real thing. That's my advice in general. If you work your way through a differential equations book; there is no point in doing the intermediate stuff and a great argument (it's a waste of time; a make work program for physics professors, and a weeder for people with low dedication to the subject) for skipping it.
FWIIW I was not a theorist, though I had some theory papers queued up on quantum dynamics. I think what everyone knows after first year of grad school is a pretty good basket of knowledge, which is why the 1st year grad school program is virtually identical everywhere in the world. It's like a gentleman learning Latin in the old days. There is a direct line from advanced calculus to completed first years of grad school physics; one which I outlined above. The imbecile make-work program of doing a bunch of intermediate problems in junior and senior year; it's really not worth it if you're an adult with a functioning cerebral cortex. Or if you're trying to pass prelims/GREs which test you on these subjects. Otherwise; skip it -do the important bits, and revisit the training wheels versions later when you need them. That's all.
> why the 1st year grad school program is virtually identical everywhere in the world
Certainly, it isn't. In the US usually starts with heavy regular coursework. In many European, there is some coursework. Unlike undergraduate physics, which is less varied, the subjects vary heavily on the place (specialization, the focus of concrete groups). In my case, it was purely research, no classes or teaching (it is less common, though).
Source: quite a lot of my friends did graduate-level physics in various places worldwide.
Agree with this 100%. To learn math or physics you have to do it, experiment, and all that.
LL and Feynman are definitely nice to look back upon though.
This doesn't contradict your point. A particular individual may find them very helpful in learning and understanding the foundational stuff. By all means try, and if it works for you, great.
However, it shouldn't be at the top of anyone's list of things to try first. And if you have tried, and it didn't work well for you - it's not you.
Citation needed.
For people at the Physics Olympiad level, it is hard to find something as eye-opening and insightful as Feynman Lectures on Physics.
For more "general audience", I guess that a more step-by-step is preferred. I know many people (usually not the Olympiad tribe) who preferred Halliday & Resnick.
It would be bad if we were to push students away from texts that are approachable for them, right?
And very important that someone who learns like you is not pushed towards the Feynman lectures because they are not a good cognitive fit.
I promise, we all learn very differently sometimes. I for one found logic as classically presented in CS studies - as symbolic text? - I found it to be very inefficient to acquire. There's a great deal of cognitive transformation that needs to happen. I do much better with wide-ranging abstractions and then then approaching the core logic in a variety of different mechanical approaches – then I "see" the core logic "through" the abstractions and implementations.
And that said, I honestly wish I had easier access to the cognitive style that works "directly" in mathematical symbols and logic and that classical logical training works for. (I don't know if that's you, but I've talked to people that think/function like that.) And I greatly respect that capacity. I.e. I'm definitely not saying mine is better. Only different.
For what it's worth, when I was in that position I found some of the Landau and Lifshitz stuff at least as insightful. I'm all for Feynman as a supplement, by the way.
Including, you know, Richard Feynman.
But definitely sometimes for some. Including to start with.
They’re quite beautiful.
Let's imagine physics=boxing. No amount of reading boxing books, or watching boxing videos is going to teach you any boxing. To learn boxing you have to throw 10,000 punches. To learn physics, you need to solve 1000s of questions. That is the necessary and sufficient condition for understanding physics.
Same way one learns software engineering after writing 100s/1000s of programs, not by watching videos of smart people coding (though that can help make you better).
I'm not sure that this is a very good analogy. You can buy a heavy bag, and go out in your garage and throw 10000 punches - with no instruction - and still not know how to throw a proper punch. OTOH, you can watch a few videos, learn some technique, and then go refine it by throwing the 10000 punches in the gym, and be a lot better off. Of course, it still won't be as good as hands-on training from a proper trainer, but my point is that you need both in the boxing case.
For physics... eh, I dunno. My original plan for college was to major in physics, and then I discovered computers, and physics went (mostly) out the door and in the rear-view mirror.
Exactly. Feynman lectures tell you what the laws are, and why they make intuitive sense. They don't tell you how to apply the laws to a wide variety of scenarios, even those not discussed in the book. Physics textbooks like Haliday & Resnick do exactly this; briefly state the law and then teach you how to apply the law.
But merely reading those textbooks won't help you either. You still have to turn to the exercises and solve a bunch of questions correctly to actually learn.
We actually agree, almost perfectly.
I contend that for some, including myself, they are an incredibly powerful tool for building an intuition. Not only after other studies, but during and before as well.
You say your part as someone who teaches, and that's important. Conversely, I say my part as someone who has learned and is learning.
But we are in almost perfect agreement.
There are two kinds of physics, Math and Physics. Most of what you learn in uni physics is Math. But the Math is only one (outdated) description of the nature of physical law.
Leonard Susskind himself has said on multiple occasions that the equations of physics are at most highschool math however the solutions are sometimes phd+ level.
To me Physics is the study of the relationship between state. Mostly this state is finite and the laws governing its evolution are simple and local. A computer is the best tool to discover the solutions to this evolving state.
>There are two kinds of physics, Math and Physics. Most of what you learn in uni physics is Math. But the Math is only one (outdated) description of the nature of physical law.
Lord knows what you mean by this. By "math physics" do you mean theoretical, and by "physics physics" the experimental part? Even then, this doesn't make any sense. Every physics course teaches theory and experiment. Particularly, what do you mean by "Math is only one outdated description of the nature of physical law"? I'm very curious, maybe I'm missing something.
>Leonard Susskind himself has said on multiple occasions that the equations of physics are at most highschool math however the solutions are sometimes phd+ level.
So? Again, I don't see what you're trying to imply with this. Seems a perfectly correct observation.
>To me Physics is the study of the relationship between state. Mostly this state is finite and the laws governing its evolution are simple and local. A computer is the best tool to discover the solutions to this evolving state.
This to my opinion is, for a lack of a better word, "hipsterism". Physics is the science that studies the universe at the most fundamental level/low level. That's it. "State"? "This state is finite"? What do you mean by "this state is finite"? I struggle to see what this is trying to describe (there are infinite degrees of freedom in many theories throughout physics).
Without him dreaming up his experiments and tinkering away, god knows when Maxwell's equations would have been discovered.
Why did we have to wait for a Faraday to show up to do his simple experiments? How come all the natural philosophers and mathematicians of the age, around the whole planet, had not thought to do them?
If Faraday had asked that bunch how do I self-study physics the answers wouldn't have been too different to what we see today.
Today's version of Faraday could very well be some kid hacking away at some computer game, dreaming up scenarios, exercising imagination and cooking up experiments in the same way Faraday did.
If you want to do a standard study in physics you are probably going to go through a significant amount of mathematics. This is because the laws "universe at the most fundamental level/low level" are expressed as math equations. If OP wants to go that route then there are tons of resources available to them.
But since OP already has a CS degree I think a possible entry point is exploring these laws through computers and in some way deriving them from simulation (here is one such simulation https://www.falstad.com/gas/)
lets leave the more outlandish claims alone for now. Perhaps I went to far.
Is this the lack of additional parameters for the equations? All of my physics problems (only took a couple courses) were like "what if this spherical horse rolled down a hill at 34 degree decline" but failed to include friction, atmosphere. Just gravity. It always felt fake to me. Perhaps this is what you were alluding to by the "outdated" description?
Ceteris paribus there is one significant distinction between Mathematics and Computer Science: state.
The Mathematical Universe is immutable/stateless/timeless. The Computational Universe is mutable/stateful/time-bound.
The observer effect in physics can be trivially expressed and evaluated as a mutating getter in any programming language.
It cannot be expressed in any Mathematical grammar.
Not all functions are referentially transparent. All Mathematical functions are assumed to be.
A bunch of functional programmers would like to have a word with you.
Yeah. I know ;)
You know that it could produce a different result on consecutive calls, right? Because the notion of a mutex/lock doesn’t exist in Math.
Mathematics doesn’t allow that, because it is not a “pure function”.
https://en.wikipedia.org/wiki/Pure_function
Non-determinism is the norm in distributed systems.
e.g any networked Turing machine.
Mathematics uses denotational semantics. It implies pass by-value and pass-by-reference are equivalent. They are in theory, they aren't in practice. That is why Haskell's lazy evaluation leaks time.
Engineers/physicists intuitively rely at least on operational semantics. It's a higher order logic, and since Linear Logic time is localized.
Could you maybe illustrate this with an example?
As with all philosophical squabbles - there are arguments for each side. It's up to you to make up your mind based on your particular use-case.
And so in context of crypto + Haskell, have a look at these two posts:
I was more wondering how time leaks and laziness relates to denotational vs operational semantics? I couldn't find anything about either in the links (they seem to be general descriptions of haskell and laziness..?).
You can't formalize the notion of 'safety' let alone prove (in the Mathematical sense) that your code has it without examining its runtime behaviour.
In the words of Donald Knuth: Beware of bugs in the above code; I have only proved it correct, not tried it.
In one context lazy evaluation may be 'safe' - it another it may be 'dangerous' - the context in which this assertion is made is always about human needs and expectations, not mathematics.
With particular example being that lazy evaluation allows for side-channel attacks in cryptographic systems. That's undesirable - hence operationally 'unsafe'.
>It cannot be expressed in any Mathematical grammar.
What on earth are you trying to say...? There is a whole mathematical treatment of quantum mechanics, measurement effect included (several treatments). More to the point, any algorithm can be formalised in e.g. a Turing machine, or any other equivalent universal model of computation. So there's literally nothing in "computer science" that you cannot express in mathematics.
This reeks of Dunning-Kruger: you don't even know enough about what you're talking about to realise how badly little sense you're making. I strongly suggest you familiarise yourself with a topic before opining about it. I'll be hard-pressed to believe you ever opened a physics textbook in your life after high school. Why then do you feel the need to talk blindly about it? I never opened a book about aeronautics in my life, therefore I would never presume to lecture anybody about plane-building... That would just be arrogance.
You can just address their ideas, this extra stuff isn't helpful.
Quoting http://math.andrej.com/2006/03/27/sometimes-all-functions-ar...
>>The lesson is for those “experts” who “know” that all reasonable models of computation are equivalent to Turing machines. This is true if one looks just at functions from N toN. However, at higher types, such as the type of our function m, questions of representation become important, and it does matter which model of computation is used.
Mathematics only proves things up to isomorphism. Two things that are theoretically equivalent are not necessarily empirically equivalent.
Or, just the good ol' adage: in theory there is no difference between theory and practice, but in practice there is.
>So there's literally nothing in "computer science" that you cannot express in mathematics.
In addition to the examples in the blog post linked above, you cannot express a mutating getter in Mathematics.
Go ahead. I'll wait.
Re mutating getter:
Monads for example are a standard way of formalising state in a pure-function universe. You seem to have some fundamental misconception about what "mathematics" is, since you keep repeating something about purity. Mathematics is merely the rigorous study of formal systems, of which your mystical "mutating getter" is one such system.
To assert that a premise is fallacious mandates that you have some prior notion of "fallaciousness".
You don't have an objective criterion for asserting whether one definition is better than another because you don't have a notion of "betterness" - it's all conventional.
It's precisely because I am an over-zealous formalist is why I see Mathematics for what it is - grammar, syntax and semantics.
It's just language.
I'm definitely not an expert but aren't irrational numbers are the best examples to show that these types of constructs already exist in math? You can't calculate them in finite amount of time. You use an analytical formula or series expansions to get the nth term instead.
Every time you call read() on it - you get a different result. It has side-effects.
This violates the “purity” of Mathematics.
That's not a train-smash for your argument if you can show me a Mathematical model for a global mutex.
When the discussion turns to control-flow you are inevitably in the land of well-ordered imperatives, not Mathematical, lazy-evaluated declaratives.
If we claim to be subscribed to denotational (Mathematical) semantics then the above contradicts the identity axiom.
And it's not any deep and world-changing insight either - it's obvious to anybody who sees that the LHS and RHS are only evaluated at runtime - they don't have any inherent (denotational) meaning, which is why I keep harping on: programmers use different semantics to mathematicians. We care about things like interaction and control flow structures as first class citizens - those are precisely the things that have no mathematical equivalents. Timeouts, exceptions, retry loops.
It's not "syntactic sugar" - it's necessity for reifying control flow. In the words of the (late) Ed Nelson: The dwelling place of meaning is syntax; semantics is the home of illusion.
Neither can you express foobarish bamboozles...
Q.E.D
Susskind's "theoretical minimum" is actually pretty good.
http://theoreticalminimum.com/courses
Fowler gives a pretty conventional undergraduate physics curriculum (adding Feynman in there somehow). If it were me: learn the math tools first. I assume you know linear algebra; learn differential equations. From there, go straight to higher level books. There's very little difference in undergraduate vs graduate quantum mechanics and E&M other than the math is slightly more sophisticated in grad school. Might as well do it right. Messiah for QM and Jackson for E&M. Classical mechanics, the tradition is to learn Lagrangian mechanics in high level undergrad and Hamiltonian in grad school. There's no real reason to do it in this order, and a decent reason (understanding Quantum) to do it in reverse order. Amusingly, the math is cleaner in Hamiltonian mechanics, but you may find yourself unable to do some simple problems you can do with Newtonian physics; so this will be a weird working backward thing. Stat Mech, I think you should just read Reif; skip Ma or whatever they use in grad school now.
FWIIW I know/knew people who did this: started grad school without having done any undergrad courses in physics. I think skipping a lot of the introductory stuff, and visiting it later is actually better.
The rest of it can be done with the same machinery you learned in QM, E&M, Mechanics and Stat Mech. Max leverage if you had to pick one: probably classical mechanics for a DL guy, E&M for general knowledge of tools.
I'd suggest not actually trying to simulate physical systems on a computer: you probably stare at computers too much anyway.