diff --git a/archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/2018-02-03-marc_b_reynolds-i-suppose-it-depends-on-how-its-said-but-variants.md b/archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/2018-02-03-marc_b_reynolds-i-suppose-it-depends-on-how-its-said-but-variants.md new file mode 100644 index 0000000..57e2c56 --- /dev/null +++ b/archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/2018-02-03-marc_b_reynolds-i-suppose-it-depends-on-how-its-said-but-variants.md @@ -0,0 +1,45 @@ +--- +title: "@tom_forsyth @EricLengyel @joeludwig I suppose it depends on how it's said but variants of \"why don't/didn't you..X?\" I might mean as \"This is probably obvious but why dismiss X?\"" +type: archive +source: twitter +source_url: "https://x.com/marc_b_reynolds/status/959784142123782144" +author: "Marc B. Reynolds" +handle: marc_b_reynolds +post_id: "959784142123782144" +date: 2018-02-03 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@tom_forsyth @EricLengyel @joeludwig I suppose it depends on how it's said but variants of \"why don't/didn't you..X?\" I might mean as \"This is probably obvious but why dismiss X?\"" +in_reply_to: "" +parent_post_id: "959680596279574529" +--- + +## Source + +- URL: https://x.com/marc_b_reynolds/status/959784142123782144 +- Author: Marc B. Reynolds (@marc_b_reynolds) +- Posted: 2018-02-03 13:42:26 + +## Branch + +**1/** **@marc_b_reynolds** ^959784142123782144 + +**@tom_forsyth** **@EricLengyel** **@joeludwig** + +I suppose it depends on how it's said but variants of "why don't/didn't you..X?" I might mean as "This is probably obvious but why dismiss X?" + +**2/** **@tom_forsyth** ^959868589565124608 + +**@marc_b_reynolds** **@EricLengyel** **@joeludwig** + +"Why don't you just X..." implies that the (skilled) person you are asking is too dumb to have thought of obvious idea X. + +A better way to phrase the question is "what happens when X..." or "what problems does doing X cause?" Implies they tried/thought of X already. + +## Related + +- Spine: [[archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified]] diff --git a/archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/index.md b/archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/index.md new file mode 100644 index 0000000..d238aff --- /dev/null +++ b/archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/index.md @@ -0,0 +1,38 @@ +--- +title: "No matter how expert you are, if another qualified person presents you with a new idea you haven't previously contemplated, take some time to objectively understand and respect its merits before becoming intransigently dismissive." +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/959483706946723841" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "959483706946723841" +date: 2018-02-02 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "No matter how expert you are, if another qualified person presents you with a new idea you haven't previously contemplated, take some time to objectively understand and respect its merits before becoming intransigently dismissive." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/959483706946723841 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2018-02-02 17:48:36 + +## Thread + +**1/** **@EricLengyel** ^959483706946723841 + +No matter how expert you are, if another qualified person presents you with a new idea you haven't previously contemplated, take some time to objectively understand and respect its merits before becoming intransigently dismissive. In other words, don't be an egotistical asshat. + +**2/** **@tom_forsyth** ^959680596279574529 + +**@EricLengyel** **@joeludwig** + +It's just not that difficult. Take 5 maybe even 10 seconds to consider it. You'll both feel better about the experience. Unless they started with "why don't you just..." - in that case feel free to rip them a new one. + +Branches: [[archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified/2018-02-03-marc_b_reynolds-i-suppose-it-depends-on-how-its-said-but-variants]] diff --git a/archive/threads/EricLengyel/2018-06-23-remember-who-youre-talking-to-when-evaluating-a/index.md b/archive/threads/EricLengyel/2018-06-23-remember-who-youre-talking-to-when-evaluating-a/index.md new file mode 100644 index 0000000..78e55d2 --- /dev/null +++ b/archive/threads/EricLengyel/2018-06-23-remember-who-youre-talking-to-when-evaluating-a/index.md @@ -0,0 +1,48 @@ +--- +title: "Remember who you're talking to when evaluating a product." +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/1010633842862931968" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "1010633842862931968" +date: 2018-06-23 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "Remember who you're talking to when evaluating a product." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/1010633842862931968 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2018-06-23 21:20:59 + +## Thread + +**1/** **@EricLengyel** ^1010633842862931968 + +Remember who you're talking to when evaluating a product. A salesman is telling you what you want to hear with no regard for the truth. An engineer is telling you the truth with no regard for what you want to hear. + +**2/** **@ChristerEricson** ^1010646665231982592 + +**@EricLengyel** + +That doesn't bide well for you who are both the engineer and the salesman for your products, Eric! :) + +**3/** **@EricLengyel** ^1010680296033808385 + +**@ChristerEricson** + +So I'm either simultaneously telling the truth and telling you what you want to hear, or I have a total disregard for both of those things? :) + +**4/** **@ChristerEricson** ^1010687788126093312 + +**@EricLengyel** + +Schrödinger's Lengyel. diff --git a/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-AdiShavit-same-goes-for-pressing-delete-when-the-rest-of.md b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-AdiShavit-same-goes-for-pressing-delete-when-the-rest-of.md new file mode 100644 index 0000000..c302b7f --- /dev/null +++ b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-AdiShavit-same-goes-for-pressing-delete-when-the-rest-of.md @@ -0,0 +1,37 @@ +--- +title: "@EricLengyel Same goes for pressing Delete when the rest of the line is all deleted." +type: archive +source: twitter +source_url: "https://x.com/AdiShavit/status/1012288053208125440" +author: "Adi Shavit" +handle: AdiShavit +post_id: "1012288053208125440" +date: 2018-06-28 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel Same goes for pressing Delete when the rest of the line is all deleted." +in_reply_to: "" +parent_post_id: "1012164030251667456" +--- + +## Source + +- URL: https://x.com/AdiShavit/status/1012288053208125440 +- Author: Adi Shavit (@AdiShavit) +- Posted: 2018-06-28 10:54:13 + +## Branch + +**1/** **@AdiShavit** ^1012288053208125440 + +**@EricLengyel** + +Same goes for pressing Delete when the rest of the line is all deleted. Do nothing more - that is indication enough. + +## Related + +- Spine: [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163]] diff --git a/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-JasonDeArte-someone-somewhere-is-sweating-oh-boy-that-was.md b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-JasonDeArte-someone-somewhere-is-sweating-oh-boy-that-was.md new file mode 100644 index 0000000..91f56d1 --- /dev/null +++ b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-JasonDeArte-someone-somewhere-is-sweating-oh-boy-that-was.md @@ -0,0 +1,40 @@ +--- +title: "@EricLengyel Someone somewhere is sweating “oh boy, that was close - at least we can still override the arrow keys on our regon specific number input field”" +type: archive +source: twitter +source_url: "https://x.com/JasonDeArte/status/1012182527685980160" +author: "Jason De Arté ☘️" +handle: JasonDeArte +post_id: "1012182527685980160" +date: 2018-06-28 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel Someone somewhere is sweating “oh boy, that was close - at least we can still override the arrow keys on our regon specific number input field”" +in_reply_to: "" +parent_post_id: "1012164030251667456" +--- + +## Source + +- URL: https://x.com/JasonDeArte/status/1012182527685980160 +- Author: Jason De Arté ☘️ (@JasonDeArte) +- Posted: 2018-06-28 03:54:54 + +## Branch + +**1/** **@JasonDeArte** ^1012182527685980160 + +**@EricLengyel** + +Someone somewhere is sweating “oh boy, that was close - at least we can still override the arrow keys on our regon specific number input field” +(peer looks down the list) +‘Hey.. guys? You might want to look at the rest of the rules’ +“😱” + +## Related + +- Spine: [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163]] diff --git a/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-steverockan-its-the-first-thing-i-turn-off-in-any-terminal-or.md b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-steverockan-its-the-first-thing-i-turn-off-in-any-terminal-or.md new file mode 100644 index 0000000..9721103 --- /dev/null +++ b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-steverockan-its-the-first-thing-i-turn-off-in-any-terminal-or.md @@ -0,0 +1,37 @@ +--- +title: "@EricLengyel It’s the first thing I turn off in any terminal or VIM setup" +type: archive +source: twitter +source_url: "https://x.com/steverockan/status/1012474132494200834" +author: "mastodon.gamedev.place/@Steverock" +handle: steverockan +post_id: "1012474132494200834" +date: 2018-06-28 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel It’s the first thing I turn off in any terminal or VIM setup" +in_reply_to: "" +parent_post_id: "1012164030251667456" +--- + +## Source + +- URL: https://x.com/steverockan/status/1012474132494200834 +- Author: mastodon.gamedev.place/@Steverock (@steverockan) +- Posted: 2018-06-28 23:13:38 + +## Branch + +**1/** **@steverockan** ^1012474132494200834 + +**@EricLengyel** + +It’s the first thing I turn off in any terminal or VIM setup + +## Related + +- Spine: [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163]] diff --git a/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/index.md b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/index.md new file mode 100644 index 0000000..56428c2 --- /dev/null +++ b/archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/index.md @@ -0,0 +1,34 @@ +--- +title: "User interface design rule #163:" +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/1012164030251667456" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "1012164030251667456" +date: 2018-06-28 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "User interface design rule #163:" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/1012164030251667456 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2018-06-28 02:41:24 + +## Thread + +**1/** **@EricLengyel** ^1012164030251667456 + +User interface design rule #163: + +When the insertion point is at the beginning of an editable text field and the user presses the Backspace key, perform no action. Do not play an error sound. Do not select all. Do not show an error message. DO NOTHING. + +Branches: [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-JasonDeArte-someone-somewhere-is-sweating-oh-boy-that-was]], [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-AdiShavit-same-goes-for-pressing-delete-when-the-rest-of]], [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163/2018-06-28-steverockan-its-the-first-thing-i-turn-off-in-any-terminal-or]] diff --git a/archive/threads/EricLengyel/2018-10-25-i-think-its-time-to-start-a-new-gamedev/index.md b/archive/threads/EricLengyel/2018-10-25-i-think-its-time-to-start-a-new-gamedev/index.md new file mode 100644 index 0000000..08a0609 --- /dev/null +++ b/archive/threads/EricLengyel/2018-10-25-i-think-its-time-to-start-a-new-gamedev/index.md @@ -0,0 +1,76 @@ +--- +title: "I think it's time to start a new gamedev conference that:" +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/1055515049408704512" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "1055515049408704512" +date: 2018-10-25 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "I think it's time to start a new gamedev conference that:" +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/1055515049408704512 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2018-10-25 17:42:52 + +## Thread + +**1/** **@EricLengyel** ^1055515049408704512 + +I think it's time to start a new gamedev conference that: + +1) Exists for industry and academic advancement, not profiteering. +2) Evaluates submissions in a fair double-blind process with qualified reviewers. +3) Respects speakers and pays them for their hard work. + +**2/** **@renderwonk** ^1055523412674666497 + +**@EricLengyel** + +SIGGRAPH has #1 and part of #2 (not double-blind). Not doing great on #3 though - in many cases they don’t even waive registration fees for speakers (depends on the type of presentation, e.g. course / talk / paper). + +**3/** **@EricLengyel** ^1055525208281366528 + +**@renderwonk** + +The review process at SIGGRAPH is still broken (at least the last time I looked at it). Rebuttals don't work because reviewers don't want to admit they made mistakes. Lack of double-blind would be harmful, but I thought I remembered them having that. + +**4/** **@EricLengyel** ^1055525569717129216 + +**@renderwonk** + +Last time I submitted, one reviewer actually gave me 1.0 in every category, the lowest score possible. I could have turned in a paper that just repeated "suck it" over and over, and I would have received the same score. It was not even remotely professional or objective. + +**5/** **@EricLengyel** ^1055525975692201984 + +**@renderwonk** + +Another reviewer for the same paper made comments clearly showing they had not even read the last couple of sections. But my rebuttal went nowhere. There's no excuse for that kind of negligence or the fact that there was nothing I could do about it. + +**6/** **@EricLengyel** ^1055538859407106048 + +**@renderwonk** + +Btw, this paper was later submitted to JGT, and the reviewers unanimously gave it extremely high praise. The editor said he was actually "giddy" with excitement over it and couldn't believe SIGGRAPH passed on it. + +**7/** **@EricLengyel** ^1055539910541594624 + +**@renderwonk** + +Hopefully you can understand why I might have very little respect for SIGGRAPH after they so spectacularly insulted me and so thoroughly failed to recognize the value of my work. + +**8/** **@renderwonk** ^1055546930422472704 + +**@EricLengyel** + +I can definitely understand, given the circumstances. diff --git a/archive/threads/EricLengyel/2019-12-05-i-have-written-a-draft-proposal-for-a-disjoint/index.md b/archive/threads/EricLengyel/2019-12-05-i-have-written-a-draft-proposal-for-a-disjoint/index.md new file mode 100644 index 0000000..94f3221 --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-05-i-have-written-a-draft-proposal-for-a-disjoint/index.md @@ -0,0 +1,36 @@ +--- +title: "I have written a draft proposal for a \"disjoint\" qualifier in C++." +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/1202423515661529089" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "1202423515661529089" +date: 2019-12-05 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "I have written a draft proposal for a \"disjoint\" qualifier in C++." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/1202423515661529089 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2019-12-05 03:04:40 + +## Thread + +**1/** **@EricLengyel** ^1202423515661529089 + +I have written a draft proposal for a "disjoint" qualifier in C++. I've been thinking about this for a long time as an alternative to attempting to bring "restrict" from C to C++, which has many problems that I believe can't be solved. Comments, please. + +http://terathon.com/disjoint_lengyel.pdf + +**2/** **@EricLengyel** ^1202423516886224901 + +I am aware that many compilers currently provide support for restrict in C++. It's an ugly hack. I'm trying to formulate something that fits into C++ elegantly. diff --git a/archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/2019-12-05-John_Ryland-i-imagine-there-might-be-some-use-cases-for-a.md b/archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/2019-12-05-John_Ryland-i-imagine-there-might-be-some-use-cases-for-a.md new file mode 100644 index 0000000..1345584 --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/2019-12-05-John_Ryland-i-imagine-there-might-be-some-use-cases-for-a.md @@ -0,0 +1,37 @@ +--- +title: "@EricLengyel @bdiamand I imagine there might be some use cases for a disjoint_cast<>() for the implementation of custom allocators." +type: archive +source: twitter +source_url: "https://x.com/John_Ryland/status/1202585115307544578" +author: "John_Ryland" +handle: John_Ryland +post_id: "1202585115307544578" +date: 2019-12-05 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel @bdiamand I imagine there might be some use cases for a disjoint_cast<>() for the implementation of custom allocators." +in_reply_to: "" +parent_post_id: "1202443278735425537" +--- + +## Source + +- URL: https://x.com/John_Ryland/status/1202585115307544578 +- Author: John_Ryland (@John_Ryland) +- Posted: 2019-12-05 13:46:49 + +## Branch + +**1/** **@John_Ryland** ^1202585115307544578 + +**@EricLengyel** **@bdiamand** + +I imagine there might be some use cases for a disjoint_cast<>() for the implementation of custom allocators. + +## Related + +- Spine: [[archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint]] diff --git a/archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/index.md b/archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/index.md new file mode 100644 index 0000000..fcce4c8 --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/index.md @@ -0,0 +1,36 @@ +--- +title: "@bdiamand I'm not convinced that casting to force disjoint should be allowed, but if it had to be there, something similar to const_cast<>() would do it." +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/1202443278735425537" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "1202443278735425537" +date: 2019-12-05 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@bdiamand I'm not convinced that casting to force disjoint should be allowed, but if it had to be there, something similar to const_cast<>() would do it." +in_reply_to: "1202426193338699776" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/1202443278735425537 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2019-12-05 04:23:12 + +## Thread + +**1/** **@EricLengyel** ^1202443278735425537 + +**@bdiamand** + +I'm not convinced that casting to force disjoint should be allowed, but if it had to be there, something similar to const_cast<>() would do it. + +I've seen "disjoint" used to describe non-aliased objects in a lot of places, so I went with it. I'm not opposed to other name choices. + +Branches: [[archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint/2019-12-05-John_Ryland-i-imagine-there-might-be-some-use-cases-for-a]] diff --git a/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-Atridas87-my-problem-with-the-anti-wedge-product-is-that-it.md b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-Atridas87-my-problem-with-the-anti-wedge-product-is-that-it.md new file mode 100644 index 0000000..207345a --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-Atridas87-my-problem-with-the-anti-wedge-product-is-that-it.md @@ -0,0 +1,106 @@ +--- +title: "@EricLengyel My problem with the anti wedge product is that it needs an arbitrary pseudoscalar to be defined." +type: archive +source: twitter +source_url: "https://x.com/Atridas87/status/1209737702091956224" +author: "Atridas" +handle: Atridas87 +post_id: "1209737702091956224" +date: 2019-12-25 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel My problem with the anti wedge product is that it needs an arbitrary pseudoscalar to be defined." +in_reply_to: "" +parent_post_id: "1209615020947980288" +--- + +## Source + +- URL: https://x.com/Atridas87/status/1209737702091956224 +- Author: Atridas (@Atridas87) +- Posted: 2019-12-25 07:28:38 + +## Branch + +**1/** **@Atridas87** ^1209737702091956224 + +**@EricLengyel** + +My problem with the anti wedge product is that it needs an arbitrary pseudoscalar to be defined. It has a "handedness", while the contraction does not. + +**2/** **@Atridas87** ^1209738708108414983 + +**@EricLengyel** + +And dual quaternions: they are equivalent to rotors* in the conformal model. I won't say I understand them fully yet, but I've come close and I believe that to be the best path there. + +*One with "only" rotation and translation. + +**3/** **@EricLengyel** ^1209944360000712704 + +**@Atridas87** + +That's the problem. Treating dual quaternions as if they're rotors is the reason why lots of things are backwards, and it's wrong. Twitter is not the proper place to elaborate. + +**4/** **@Atridas87** ^1209949583842926593 + +**@EricLengyel** + +Well, they perform two rotations: one around an arbitrary line in 3d space and a second around a line in the horizon perpendicular to that axis. + +**5/** **@EricLengyel** ^1209962875814440961 + +**@Atridas87** + +Rotors are composed of reflections through vectors, and as a result, can only rotate about the origin. What you're talking about is composed of reflections through *planes*, and that is what makes it possible to rotate about a line and perform translations in projective space. + +**6/** **@EricLengyel** ^1209963383803367424 + +**@Atridas87** + +This is the crux of the problem. Everyone makes dual quaternions by using the geometric product to concatenate two reflections through vectors. But what they really want is to use the *anti* geometric product to concatenate two reflections through antivectors. + +**7/** **@Atridas87** ^1209964624281513984 + +**@EricLengyel** + +When I come back to the problem I'll think about that. +In the conformal model you can decompose a translation to the reflection to a free vector + the reflection to the point at infinity. I don't know what neither of those means yet, so I'll 🤐 + +**8/** **@Atridas87** ^1209964899801145345 + +**@EricLengyel** + +At the moment what I do is to interpret geometrically the logarithm of the rotor as the plane of rotation. + +**9/** **@EricLengyel** ^1209942706077569024 + +**@Atridas87** + +The antiwedge product is not a replacement for the contraction, which is an interior product. Contraction is an antiwedge product between one thing and the complement of another, and IMO, it makes more sense to look at it that way: + +![](https://pbs.twimg.com/media/EMqUejIU8AAXSB1?format=png&name=orig) + +**10/** **@Atridas87** ^1209948090024759298 + +**@EricLengyel** + +In the algebra of subspaces, the wedge product does addition and the contraction substraction. +The antiwedge does the intersection if and only if the pseudoscalar is the union. To me, that's another category, less "fundamental", but useful nevertheless. + +**11/** **@Atridas87** ^1209948875823472640 + +**@EricLengyel** + +The antiwedge can be defined in terms of the wedge (the formula I learned from your book) or the contraction (the formula you just wrote rearranged). +It still needs an arbitrary pseudoscalar* that acts as a union of both blades to work. + +*a blade actually works! + +## Related + +- Spine: [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric]] diff --git a/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-gfxcoder-precisely-the-reason-i-bought-fged1-looking.md b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-gfxcoder-precisely-the-reason-i-bought-fged1-looking.md new file mode 100644 index 0000000..af24e3b --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-gfxcoder-precisely-the-reason-i-bought-fged1-looking.md @@ -0,0 +1,37 @@ +--- +title: "@EricLengyel precisely the reason I bought FGED1! looking forward to 3!" +type: archive +source: twitter +source_url: "https://x.com/gfxcoder/status/1209685352388202497" +author: "Jon Denning" +handle: gfxcoder +post_id: "1209685352388202497" +date: 2019-12-25 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel precisely the reason I bought FGED1! looking forward to 3!" +in_reply_to: "" +parent_post_id: "1209615020947980288" +--- + +## Source + +- URL: https://x.com/gfxcoder/status/1209685352388202497 +- Author: Jon Denning (@gfxcoder) +- Posted: 2019-12-25 04:00:37 + +## Branch + +**1/** **@gfxcoder** ^1209685352388202497 + +**@EricLengyel** + +precisely the reason I bought FGED1! looking forward to 3! + +## Related + +- Spine: [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric]] diff --git a/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-sterlingcrispin-when-you-say-ga-community-do-you-mean-that.md b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-sterlingcrispin-when-you-say-ga-community-do-you-mean-that.md new file mode 100644 index 0000000..d7fd489 --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-sterlingcrispin-when-you-say-ga-community-do-you-mean-that.md @@ -0,0 +1,57 @@ +--- +title: "@EricLengyel When you say GA community do you mean that abstractly or are you on a mailing list? Is there a better book than the Kaufman series Geometric Algebra for computer science that covers this? I really want to get into GA" +type: archive +source: twitter +source_url: "https://x.com/sterlingcrispin/status/1209695906938806272" +author: "Sterling Crispin 🕊️" +handle: sterlingcrispin +post_id: "1209695906938806272" +date: 2019-12-25 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel When you say GA community do you mean that abstractly or are you on a mailing list? Is there a better book than the Kaufman series Geometric Algebra for computer science that covers this? I really want to get into GA" +in_reply_to: "" +parent_post_id: "1209615020947980288" +--- + +## Source + +- URL: https://x.com/sterlingcrispin/status/1209695906938806272 +- Author: Sterling Crispin 🕊️ (@sterlingcrispin) +- Posted: 2019-12-25 04:42:33 + +## Branch + +**1/** **@sterlingcrispin** ^1209695906938806272 + +**@EricLengyel** + +When you say GA community do you mean that abstractly or are you on a mailing list? Is there a better book than the Kaufman series Geometric Algebra for computer science that covers this? I really want to get into GA + +**2/** **@EricLengyel** ^1209969202150305792 + +**@sterlingcrispin** + +Geometric Algebra for Computer Science suffers from all of the problems I mentioned, and more. Some people may love it, but I personally don't agree with its general teaching methods, and I especially don't agree with some of its specific omissions. + +**3/** **@EricLengyel** ^1209970786347315200 + +**@sterlingcrispin** + +Naturally, I would recommend my own book because I think it provides an introduction that is uniquely intuitive and practical. As it's meant to teach a solid understanding of the basics, it doesn't have anywhere near the breadth of the GA for CS book. + +https://www.amazon.com/dp/0985811749/?tag=terathon-20 + +**4/** **@sterlingcrispin** ^1209982395593584640 + +**@EricLengyel** + +I actually bought it immediately when I realized you had written a book on the topic! Can't wait for it to arrive + +## Related + +- Spine: [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric]] diff --git a/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-vicen_cm-yes-please.md b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-vicen_cm-yes-please.md new file mode 100644 index 0000000..0c9543f --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-vicen_cm-yes-please.md @@ -0,0 +1,37 @@ +--- +title: "@EricLengyel Yes please!" +type: archive +source: twitter +source_url: "https://x.com/vicen_cm/status/1209756432834473984" +author: "vicen" +handle: vicen_cm +post_id: "1209756432834473984" +date: 2019-12-25 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "@EricLengyel Yes please!" +in_reply_to: "" +parent_post_id: "1209615020947980288" +--- + +## Source + +- URL: https://x.com/vicen_cm/status/1209756432834473984 +- Author: vicen (@vicen_cm) +- Posted: 2019-12-25 08:43:04 + +## Branch + +**1/** **@vicen_cm** ^1209756432834473984 + +**@EricLengyel** + +Yes please! + +## Related + +- Spine: [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric]] diff --git a/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/index.md b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/index.md new file mode 100644 index 0000000..f09ac0f --- /dev/null +++ b/archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/index.md @@ -0,0 +1,60 @@ +--- +title: "1/8 Every operation in Grassmann/geometric algebra has a dual, which is just as important." +type: archive +source: twitter +source_url: "https://x.com/EricLengyel/status/1209615013725396992" +author: "Eric Lengyel" +handle: EricLengyel +post_id: "1209615013725396992" +date: 2019-12-24 +archived: 2026-08-27 +draft: false +tags: + - archive + - twitter + - EricLengyel +description: "1/8 Every operation in Grassmann/geometric algebra has a dual, which is just as important." +in_reply_to: "" +--- + +## Source + +- URL: https://x.com/EricLengyel/status/1209615013725396992 +- Author: Eric Lengyel (@EricLengyel) +- Posted: 2019-12-24 23:21:07 + +## Thread + +**1/** **@EricLengyel** ^1209615013725396992 + +1/8 Every operation in Grassmann/geometric algebra has a dual, which is just as important. The dual of the wedge "progressive" product is the antiwedge "regressive" product. + +**2/** **@EricLengyel** ^1209615014648107008 + +2/8 With few exceptions, texts on geometric algebra completely ignore the antiwedge product and often have to compensate with less fundamental operations like the unintuitive "contraction" product. I get the impression that many authors don't actually understand the connection. + +**3/** **@EricLengyel** ^1209615015839272961 + +3/8 There is also a dual to the dot product and a dual to the geometric product. Nobody seems to know anything at all about those, and you won't find them in any text. However, they are important for properly understanding operators that perform rigid motions. + +**4/** **@EricLengyel** ^1209615016858570752 + +4/8 Because nobody knows the dual geometric product even exists, we are currently using dual quaternions incorrectly. I'm not saying the actual rotation/translation calculations end up being wrong. + +**5/** **@EricLengyel** ^1209615017890312198 + +5/8 But the wrong types of mathematical entities have to be jammed into the calculations to compensate for the fact that the wrong fundamental operations are being used. + +**6/** **@EricLengyel** ^1209615019014443008 + +6/8 This is something that has always bothered me about dual quaternions. After some recent research, I'm confident that I now understand what's going on, and I have successfully reformulated everything as necessary. + +**7/** **@EricLengyel** ^1209615019958128641 + +7/8 I don't think it's that hard to correct the situation, but it does require that you recognize the dual to the geometric product. When I've tried to talk to the GA community about this in the past, however, they cover their ears and yell "La, la, la, la...". + +**8/** **@EricLengyel** ^1209615020947980288 + +8/8 I'll write something up about this soon. It will also be covered in FGED3. + +Branches: [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-gfxcoder-precisely-the-reason-i-bought-fged1-looking]], [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-sterlingcrispin-when-you-say-ga-community-do-you-mean-that]], [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-Atridas87-my-problem-with-the-anti-wedge-product-is-that-it]], [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric/2019-12-25-vicen_cm-yes-please]] diff --git a/archive/threads/EricLengyel/index.md b/archive/threads/EricLengyel/index.md index 6f5924c..1099071 100644 --- a/archive/threads/EricLengyel/index.md +++ b/archive/threads/EricLengyel/index.md @@ -23,9 +23,16 @@ tags: - [[archive/threads/EricLengyel/2017-11-13-i-wrote-down-some-thoughts-about-how-a-transient]] - [[archive/threads/EricLengyel/2017-11-17-one-advantage-to-not-including-any-os-headers-or]] - [[archive/threads/EricLengyel/2017-12-29-i-know-a-lot-of-people-are-against-software]] +- [[archive/threads/EricLengyel/2018-02-02-no-matter-how-expert-you-are-if-another-qualified]] +- [[archive/threads/EricLengyel/2018-06-23-remember-who-youre-talking-to-when-evaluating-a]] +- [[archive/threads/EricLengyel/2018-06-28-user-interface-design-rule-163]] - [[archive/threads/EricLengyel/2018-07-04-i-think-its-safe-to-say-that-nowadays-you-should]] - [[archive/threads/EricLengyel/2018-07-24-the-final-figure-got-even-crazier]] - [[archive/threads/EricLengyel/2018-08-14-thread]] +- [[archive/threads/EricLengyel/2018-10-25-i-think-its-time-to-start-a-new-gamedev]] - [[archive/threads/EricLengyel/2019-01-07-i-have-formal-mathematical-training-and-i-still]] +- [[archive/threads/EricLengyel/2019-12-05-i-have-written-a-draft-proposal-for-a-disjoint]] +- [[archive/threads/EricLengyel/2019-12-05-im-not-convinced-that-casting-to-force-disjoint]] - [[archive/threads/EricLengyel/2019-12-21-the-term-g-buffer-was-already-in-use-by-the-mid]] +- [[archive/threads/EricLengyel/2019-12-24-1-8-every-operation-in-grassmann-geometric]] - [[archive/threads/EricLengyel/2026-01-23-ive-worked-very-hard-over-many-years-to-develop-a]]