Immersive Linear Algebra – textbook with fully interactive figures (2015)
immersivemath.com
immersivemath.com
Since then i have seen the Strang videos again and again. Beginning to end. Read the book chapter by chapter and exercises by exercise. And what a delight it had been. And then i jumped upon Joe Blitzstein's probability lectures. What a blast ! Is there a list of teachers like these there, who in the pretext of teaching algebra/probability etc are in reality wiring up our thinking process in ways immaterial to subject they are teaching. Many of us don't want the material to be too casual/layman terms (which hampers self understanding as its no challenging anything within us) and not too rigid (where we cannot break through the challenge).
At what point did you realize this? Like, could you provide a specific example of a topic you thought was hard at first but later came back to and realized was all about the intuition?
I was just reading Landau & Lifshitz' "Statistical Physics", and can reflect on a series of thoughts that may elaborate on how intuition plays a role in the enjoyment and understanding of complex material. I've been meaning to write it down anyway...
On page 3, the book says "A fundamental feature of this [closed system/open subsystem] approach is the fact that, because of the extreme complexity of the external interactions with the other parts of the system, during a sufficiently long time the subsystem considered will be many times in every possible state." When I first read this, I thought "non sequitur, but whatever, I'll continue..." Now, the context of this quote is that the authors are trying to explain why statistical methods work at all. And they said prior that we start with laws that apply to 'microscopic' particles and use statistics to generalize to 'macroscopic' systems.
However, the second time I read this, I kept thinking it must be backwards. We didn't understand the motion of (classical) protons before understanding the motion of macroscopic balls. So we had to have been operating under the assumption that the macroscopic laws must apply to microscopic objects, and then require that the must also be reproducible macroscopically through statistical methods. That is, we require that these laws be invariant across the microscopic-to-macroscopic transition. But to do that, we have to use a framework which expresses such a transition. So, for instance, if we are reasoning about the motion of a ball, we have to translate our laws into laws over the motion of some statistical model of the ball. Say, it's center of mass. And with this concept in hand, we could write laws that apply to both the macro and micro worlds, since a 'center of mass' is a macro-micro-scale-invariant abstraction. So we partition the space of all possible laws of nature, and chose to work only in that partition which encodes things we can actually know about nature -- the partition identified by the macro-micro-scale-invariant.
So re-reading that passage, it is now not a non-sequitur for me. Now it says "because the interactions with the outside world are so complex, we could not hope to predict their influence. Thus we are justified in using random variables to model their influence, and concepts that derive from the use of random variables to ensure we have complexity-scale invariance when we formulate our laws of physics." And this is not a non-sequitur to me. It follows directly from the meaning of the word "random." Of course statistical methods work when the complexity of a system is indistinguishable from randomness.
--
And this whole line of thought generalizes (albeit informally.) For instance, the meaning of words is an invariant across a long thread of contextual translations, and these invariants are used the same way: to partition the space of all possible meanings in such a way that one partition contains all of the 'knowledge' imbued by that word, and thus you can navigate a narrower space of meaning to find the intended and/or correct one. Gives me a certain brand of appreciation for good poetry.
Or -- my girlfriend -- who recently told me that she loved algebra but couldn't understand trigonometry. I tried telling her that the algebraic transformations were invariant-preserving operations selected because they conformed to known laws about 'functions' like addition and multiplication which have commutativity and identity laws, and that trigonometry was no different: different functions, but all of the algebraic transformations you needed were selected from the laws of trigonometry with the purpose of maintaining the exact same invariants. (Not that she cared much, to be honest...)
And on and on... I could probably talk for days about all the different ways every subject can be reduced to transformations and invariants and how they are used to solve problems.
I find myself partial to this type of world view too. I believe it is part of the appeal of functional programming, at the basest level, to shape the programming model into transformations (functions) and invariants (state).
Thank you for penning those words. I hope people realize the significance of what you just said.
Perspective is key. You could say it is the KEY -- the key insight into unlocking everything else. I had a similar experience in 2009, and once you have the epiphany -- once you experience the awe of a shift and recognize the implications -- it's like your mind becomes unshackled. You realize you have been blind, and you've just learned to see. And in that flash you gain a deep, visceral understanding of what Alan Kay means when he says, "A change in perspective is worth 80 IQ points," and "We can't learn to see until we admit we are blind."
"Life's Illuminating Perspective" (2009) http://jamesthornton.com/manifesto
Statistics 110: Probability - Joe Blitzstein, Harvard University http://projects.iq.harvard.edu/stat110/youtube
https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2x...
And then started to do his own thing a little more.
I'm constantly seeing more people coming out with books for free or just a passive donation link. This makes me immensely happy seeing as how they're leveraging the available free resources (Latex, CC-BY-SA content, free software for graphics) to make more resources available for free.
Open software is one thing, but a book is much more permanent in my opinion. A book like this will never go 'stale' or old like software does. We only need handful of good books for every topic out there at which point we can basically not buy books anymore. For many topics, I hardly have to consider buying a book since I can just use a free book offered by a professor. And watch course lectures.
What I want to say is this: Please write more for free. It doesn't matter if there is not much interest in what you are writing. It will help you too!
That was exactly my first thought. "Wait a minute, this is an entire textbook, with all the work, and the prior experience, hiding in plain site behind cool interactivity."
You can write a networking stack in C adhering to a protocol and be done with it, while code for the new $COOL_WEB_APP might go out of mainstream use by the time you're done writing the networking stack.
I don't think most books, especially math and science ones go stale. A poorly written book is just that; a poorly written book. It's bad from the beginning
As a suggestion for improvement, consider allowing the learner to edit the formulas which represent the figures and have the figures update. Additionally editing the figures could update the formula in real time.
This sort of bi-directional instant feedback will aid the understanding and engagement of the learner better than figure manipulation alone.
Along the lines of interactivity, maybe having a scratch area like a Jupyter notebook would be a potentially great addition so that I could try problems near the area where I'm reading.
Would be interested how one would manage to include a jupyter scratchpad in the online version?
Temporary notebook service: https://github.com/jupyter/tmpnb
Jupyter javascript plugin for static sites: https://github.com/oreillymedia/thebe
Also, you may want to consider trinket: https://trinket.io/
http://www.hnwatcher.com/r/984396/Embed-interactive-Python-a...
For example, this book uses trinket for interactive Python: https://books.trinket.io/pfe/index.html
I've just tried running:
import numpy as np
from scipy import linalg
A = np.array([[1,2],[3,4]])
print(linalg.det(A))
at https://trinket.io/features/python3 and it worked like a charm :)in short (over simplified, my take): interactive visualizations are dead because nobody interacts with them.
wondering if this holds here as well.
Can't find the reference anymore, but there were also papers in educational sciences that interactive books usually don't increase comprehension of kids (they just play with them instead of depen their understanding).
edit: sorry didn't want to sound too critical. The work is awesome (upvote), was just thinking out loud.
I can also clearly remember times when this was not my approach, and in those times, pictures were just a lot of time saved because I didn't have to read text that otherwise would have been there.
I am the author of a widely-used LA text, and have considered adding interactive stuff. But there is a tradeoff. For one thing, it locks you to online, and despite the claims of our IT people, my correspondents (mostly self-learners) do not want online, they want print or PDF (as do I, since the appearance that LaTeX gives me is important to me).
For another, the tech has in the recent past changed so fast that maintaining the interactives would be a significant job. I don't mind learning JS to do something good but tying myself to many hours a year responding to bug reports from people on obscure platforms, or using IE6, is not a good use of my life energy.
Finally, I had a colleague, a complex analyst, try Visual Complex Analysis and he reported that students did not get it. He is very sober, very caring, very reliable. This starts to make sense of his report.
Personally I don’t think it’s ideal to use as an only book for a complex analysis course, but I found it very helpful for crystalizing my intuition/thinking about the subject. I would recommend every university math student try reading it, especially after going through a traditional course. (Also recommended is Wegert’s book Visual Complex Functions, but definitely not as a primary text.)
Finally, I suspect switching primary books is only going to work well if the professor makes a commitment to teaching using the same explanations. If the book goes about the subject in a completely different way than the lectures, I can well imagine students working homework sets on a short deadline may get confused.
This just seems too backward and over-done to me. But go ahead and test it on some newbies, maybe I'm totally wrong here.
The way to find a given cosine of a given angle between two arbitrary vectors is by taking the dot product of the two vectors and then normalizing by their lengths.
Using the cosine to define the dot product is precisely backwards.
I found https://www.lth.se/fileadmin/lth/genombrottet/LUkonf2015/41_... which says "The figures were programmed using JavaScript using a graphics engine that we have developed for the interactive illustrations", but that's all the detail it gives.
He offers some interesting reflections and anecdotes on this subject in this interview describing his classes préparatoires aux grandes écoles. Apparently his teacher considered him a total wildcard case who would either flunk the exams or pass with flying colours, because of his habit of approaching everything through geometric intuition rather than symbolic manipulation.
If you have any questions you think I'd know the answer to, ask away!
It's important to appreciate how useful it might be to make math "tangible". Sure, someone who can define a manifold by saying "oh, put charts on it, locally diffeo blah blah" probably has a good set of mental models that help them find analogies and even "tangibilize" (word?) new ideas. Once you learn the way abstraction works, broadly speaking, you can take the training wheels off: but lots of people never get past that stage. On one hand, I see a lot of people on HN talk about how the complicated notation of academic math/CS keep people out (and there is an understandable amount of resentment at people keeping "outsiders" out with this), and on the other hand, I sort of reflexively bristle (it's gotten lesser now) at people integrating the notion of an inner product into a vector space, because it is important to not stumble later when you find out your basic intuition for something is broken[3]. (Of course, intuition can be incrementally "patched": Terence Tao's essay[3] talks about this, from the perspective of someone who is a brilliant educator in addition to also being one of the most versatile mathematicians around.)
Maybe presentations of basic mathematics that are
- simple
- rigorous
- free of half-truths
can be made accessible by using such visualizations and interactive techniques to decrease the perceived unfamiliarity of the ideas? I don't think there are many[2] treatments of mathematical topics that satisfy these criteria and yet manage to be approachable: one either skimps on a clean presentation (Khan Academy), or assumes a lot of mathematical maturity (shoutout to Aluffi!) from the reader. "Manipulable resources" might help fill this gap. It's an exciting time!
--
In the section where they give examples of matrix inverses, to give people a sense of how important multiplication order is, they give an example of RHR'H' (using a prime for inverse, R for a rotation matrix, and H for a shear matrix). One of the most beautiful illustrations[1] in the book follows, with the four corners of a square moving independently in circles, and then the book states that
It is quite close, but it is not at all useful.
While I understand the need to clarify the importance of multiplying matrices in the correct order, maybe a short aside on the unreasonable (practical!) effectiveness of commutators[0] would be useful?[0]: https://en.wikipedia.org/wiki/Commutator
[1]: http://immersivemath.com/ila/ch06_matrices/ch06.html ("Example 6.12: Matrix Product Inverse au Faux")
[2]: Visual Complex Analysis is brilliant, though.
[3]: https://terrytao.wordpress.com/career-advice/there%E2%80%99s...
Great resource, though!