6 ms·
Quaternions are one of those subjects where the community sees a steady stream of tutorial content, which really doesn't seem to be adding much to the discourse
by ajross 4y ago
Quaternions are one of those subjects where the community sees a steady stream of tutorial content, which really doesn't seem to be adding much to the discourse to my eyes. It's like a "yet another git tutorial" kind of thing.
In fact Ken Shoemake, who was responsible for originally popularizing quaternions as a robust rotation/orientation representation[1], wrote his own tutorial of this stuff back in the late 80's sometime, and it's really, really great: https://www.ljll.math.upmc.fr/~frey/papers/scientific%20visualisation/Shoemake%20K.,%20Quaternions.pdf https://www.ljll.math.upmc.fr/~frey/papers/scientific%20visu...
Folks should start with that one before trying to rewrite it, IMHO.
[1] Here's a copy of the 1985 paper: https://www.cs.cmu.edu/~kiranb/animation/p245-shoemake.pdf https://www.cs.cmu.edu/~kiranb/animation/p245-shoemake.pdf
- keepquestioning 4y agoAdd to the list - Hidden Markov Models - Kalman filters Things which have tutorials that continually fail to explain the tao of the thing.
- pklausler 4y agoDon't forget monad tutorials!
- wwweston 4y agoAre there any tutorials successfully convey the tao of those things?
- keepquestioning 4y agoNo
- eternityforest 4y agoKalman filters are so interesting. As far as I can tell they are one of the very simplest things one can do that requires a real understanding of math. It doesn't seem like you can just drop in a library, in the general case, or if you can, it doesn't seem to be common practice. Usually things that need an actual understanding are either totally novel, or solved problems with existing tools. Kalman filters are where you find out that you really did need math all along, if you're like me and don't really see math in everyday life. I suspect there's still a way to fake your way through if you need to and have a day or two to study, but the first time you see it it really shows what you don't know. It's like when you see non physicists talking about physics and feel amazed at how they managed to seemingly understand maxwells equations just for fun.
- jacobolus 4y agoPeople should start with http://geocalc.clas.asu.edu/pdf/OerstedMedalLecture.pdf http://geocalc.clas.asu.edu/pdf/OerstedMedalLecture.pdf
- JadeNB 4y agoIt is well for non-specialists to be aware, however, that, while geometric algebra is a real thing, Hestenes's tireless promotion of it as the One True Language of physics is about as appropriate as identifying and anointing the One True Language of programming. One can and should have at one's command as many languages as possible; singling out geometric algebra as the one right language and forgetting the others is as bad as not being aware of geometric algebra at all.
- hgomersall 4y agoYour response seems an overreaction to a suggestion that that article should be read first. GA is IMO without a doubt a very helpful way of understanding quaternions, which the OP doesn't really try to do.
- JadeNB 4y ago> Your response seems an overreaction to a suggestion that that article should be read first. GA is IMO without a doubt a very helpful way of understanding quaternions, which the OP doesn't really try to do. I was indeed specifically responding to the suggestion that the speech be read first. If it's the first thing one reads on the subject, then one has no context in which to take Hestenes's remarks, and it is easy to take very literally his claims about the primacy and universality of geometric algebra—so I wanted to give some of that context first.
- jacobolus 4y agoHestenes’s tireless promotion is necessary because most everyone else, having grown up with a different formalism, is too entrenched / busy to try to make a basic change to what we teach and use, even when that change would provide tremendous benefits. In physics there was some uptake where appropriate, but mathematicians for the most part scoff (“this is just a different notation for structures that were studied in the 19th century, there’s nothing new here” kind of thing). But being able to multiply and divide vectors is a big deal, and GA is packed with incredibly useful identities. Working coordinate-free in a rich enough language of geometric relationships makes it (a) a lot easier to solve gnarly geometric problems, and (b) a whole heck of a lot easier to demonstrate and explain those solutions. The change of perspective has been most impactful in fields where the details can’t be hand-waved away because they are getting interpreted by a computer, so streamlining them helps a lot. In particular, computer graphics, computer vision, robotics, physical simulation, and the like.
- derjames 4y agoKen Shoemake also has an article in Graphics Gems IV. Section III.1 page 175. Theory and Sample program included. This is the only thing I needed to read to understand quaternions.
- westoncb 4y agoQuaternions are the monads of graphics programming.
- boppo1 4y agoMonads?
- westoncb 4y agoIt’s a mathematical abstraction a lot of people feel they need to understand (‘cause of its connection to some programming language theory stuff, and practical use within Haskell notably), so there are a million tutorials where someone is purportedly, finally, going to make the concept clear.
- eternityforest 4y agoI think somewhere I actually did find one that made it clear. But I don't remember anything about it at all. I just vaguely remember them as something super abstract, that you can work through with about the same effort as a sudoku puzzle, but you have to go actually learn Haskell to understand why you'd want one. Then they say something about function composition, but it seems like have to already be a functional expert to know why you would care about composing functions in a consistent way instead of just calling them from a new function.
- eloisius 4y agoMonoids in the category of endofunctors, what are you daft?
- boppo1 4y agoHahaha apparently so.
- Akronymus 4y agohttps://www.youtube.com/watch?v=ENo_B8CZNRQ https://www.youtube.com/watch?v=ENo_B8CZNRQ I think this is a pretty good, concise explanation.
- the__alchemist 4y agoThose look like outstanding resources, especially given their history; will dive in later today; added links in the article overview and references.