<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="/simple-atom.xslt"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US">
  <title>joshua.seigler.net - learning</title>
  <subtitle>Personal homepage of Joshua Seigler</subtitle>
  <link href="https://joshua.seigler.net/feeds/learning.xml" rel="self" />
  <link href="https://joshua.seigler.net/" />
  <updated>2026-07-06T00:00:00Z</updated>
  <id>https://joshua.seigler.net/</id>
  <author>
    <name></name>
  </author>
    <entry>
      <title>Cool musical illusion - tritone paradox</title>
      <link href="https://joshua.seigler.net/posts/cool-musical-illusion-tritone-paradox/" />
      <updated>2026-07-06T00:00:00Z</updated>
      <id>https://joshua.seigler.net/posts/cool-musical-illusion-tritone-paradox/</id>
      <content type="html">&lt;script&gt;
  const files = [
    &quot;/sfx/shepard-chromatic-c/01-C.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/02-Cs.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/03-D.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/04-Ds.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/05-E.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/06-F.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/07-Fs.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/08-G.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/09-Gs.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/10-A.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/11-As.mp3&quot;,
    &quot;/sfx/shepard-chromatic-c/12-B.mp3&quot;,
  ];
  const audios = files.map(f =&gt; new Audio(f));
  audios.forEach((x, i) =&gt; {
    x.addEventListener(&#39;play&#39;, () =&gt; {
      document.getElementById(`pitch-${i}`).classList.add(&quot;active&quot;);
    })
    x.addEventListener(&#39;ended&#39;, () =&gt; {
      document.getElementById(`pitch-${i}`).classList.remove(&quot;active&quot;);
    })
  })
  const controller = new AbortController();
  function playTone(index, clearOnended = true) {
    const tone = audios[index];
    if (clearOnended) {
      tone.onended = undefined
    }
    if (tone.readyState &gt;= HTMLMediaElement.HAVE_CURRENT_DATA) {
      tone.pause();
      tone.currentTime = 0;
      tone.play();
    }
  }
  function playTritone(index1) {
    const index2 = (index1 + 6) % 12;
    const tone1 = audios[index1];
    const tone2 = audios[index2];
    tone1.onended = () =&gt; {
      playTone(index2, false);
    };
    tone2.onended = () =&gt; {
      tone1.onended = undefined;
      tone2.onended = undefined;
    }
    playTone(index1, false);
  }
&lt;/script&gt;
&lt;p&gt;Have you heard of “Shepard tones”? They are produced when you play a note in every octave at once, so the “pitch height” is ambiguous.&lt;/p&gt;
&lt;p&gt;Well, if you play one of these shepard tones (just a single note, like a &lt;button class=&quot;inline&quot; onclick=&quot;playTone(0)&quot;&gt;C&lt;/button&gt;) and you then play its tritone &lt;button class=&quot;inline&quot; onclick=&quot;playTone(6)&quot;&gt;F♯&lt;/button&gt; which is half an octave away, some people will hear the second note as higher, and some will hear it as lower.&lt;/p&gt;
&lt;p&gt;Try it! &lt;button class=&quot;inline&quot; onclick=&quot;playTritone(0)&quot;&gt;C =&amp;gt; F♯&lt;/button&gt;&lt;/p&gt;
&lt;p&gt;Which you hear seems to depend on your perception of the first note as high or low, which is connected with how you process pitch in language (and therefore is not something you can easily change). People tend to hear the same thing their mother hears, and there are regional tendencies as well (England vs California have opposite tendencies).&lt;/p&gt;
&lt;p&gt;This would only be possible if &lt;em&gt;everyone has a latent sense of absolute pitch&lt;/em&gt;!&lt;/p&gt;
&lt;p&gt;If you arrange the pitches in a loop or circle, you generally hear up for half of the circle and down for the other half, with a little ambiguity in the middle where you might be able to hear it either way.&lt;/p&gt;
&lt;p&gt;I find that if you listen to them too quickly, they all seem to be in the same direction. But if you pause between each one, or jump around, you can identify which tones you always hear strongly in one direction, and which ones you can hear both directions. Try it out! See if people around you hear things differently than you.&lt;/p&gt;
&lt;style&gt;
  #shepard-piano {
    width: 40ch;
    height: 40ch;
    margin-inline: auto;
    position: relative;
  }
  .piano-key {
    position: absolute;
    background-color: var(--c-accent);
    transition: background-color 0.2s ease;
    font-size: 1.5em;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(calc(var(--index) * 30deg)) translateY(-10rem) rotate(calc(var(--index) * -30deg));
  }
  .piano-key.active {
    background-color: var(--c-text) !important;
  }
&lt;/style&gt;
&lt;h2 id=&quot;tritone-paradox-piano&quot; tabindex=&quot;-1&quot;&gt;&lt;a class=&quot;header-anchor&quot; href=&quot;https://joshua.seigler.net/posts/cool-musical-illusion-tritone-paradox/#tritone-paradox-piano&quot; aria-hidden=&quot;true&quot;&gt;&lt;/a&gt; Tritone paradox piano&lt;/h2&gt;
&lt;div id=&quot;shepard-piano&quot;&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-0&quot; style=&quot;--index: 0&quot; onclick=&quot;playTritone(0)&quot;&gt;C&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-1&quot; style=&quot;--index: 1&quot; onclick=&quot;playTritone(1)&quot;&gt;C♯&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-2&quot; style=&quot;--index: 2&quot; onclick=&quot;playTritone(2)&quot;&gt;D&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-3&quot; style=&quot;--index: 3&quot; onclick=&quot;playTritone(3)&quot;&gt;D♯&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-4&quot; style=&quot;--index: 4&quot; onclick=&quot;playTritone(4)&quot;&gt;E&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-5&quot; style=&quot;--index: 5&quot; onclick=&quot;playTritone(5)&quot;&gt;F&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-6&quot; style=&quot;--index: 6&quot; onclick=&quot;playTritone(6)&quot;&gt;F♯&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-7&quot; style=&quot;--index: 7&quot; onclick=&quot;playTritone(7)&quot;&gt;G&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-8&quot; style=&quot;--index: 8&quot; onclick=&quot;playTritone(8)&quot;&gt;G♯&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-9&quot; style=&quot;--index: 9&quot; onclick=&quot;playTritone(9)&quot;&gt;A&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-10&quot; style=&quot;--index: 10&quot; onclick=&quot;playTritone(10)&quot;&gt;A♯&lt;/button&gt;
  &lt;button class=&quot;piano-key&quot; id=&quot;pitch-11&quot; style=&quot;--index: 11&quot; onclick=&quot;playTritone(11)&quot;&gt;B&lt;/button&gt;
&lt;/div&gt;
&lt;h2 id=&quot;references-and-notes&quot; tabindex=&quot;-1&quot;&gt;&lt;a class=&quot;header-anchor&quot; href=&quot;https://joshua.seigler.net/posts/cool-musical-illusion-tritone-paradox/#references-and-notes&quot; aria-hidden=&quot;true&quot;&gt;&lt;/a&gt; References and notes&lt;/h2&gt;
&lt;p&gt;This effect was first discovered by psychologist Diana Deutsch - read more and see references on &lt;a href=&quot;https://en.wikipedia.org/wiki/Tritone_paradox&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;the Wikipedia entry for Tritone paradox&lt;/a&gt;. Thanks to Joseph Sardin for his &lt;a href=&quot;https://bigsoundbank.com/generator/shepard.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;shepard tone generator&lt;/a&gt; which produced these sounds. To make the tones a little less harsh and make the illusion as salient as possible, I tried to center the octaves on the human vocal range, 80hz to 1000hz.&lt;/p&gt;
</content>
    </entry>
    <entry>
      <title>The Trivium: A Tool for Learning Anything</title>
      <link href="https://joshua.seigler.net/posts/the-trivium-a-tool-for-learning-anything/" />
      <updated>2021-04-03T00:00:00Z</updated>
      <id>https://joshua.seigler.net/posts/the-trivium-a-tool-for-learning-anything/</id>
      <content type="html">&lt;p&gt;Information today has become siloed. It’s a common belief that little, if any, expertise from one field of knowledge transfers over to other fields. But there is a forgotten tool that anyone can use to confidently approach new subjects and problems: the &lt;em&gt;Trivium&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;The ancients considered the liberal arts to be composed of seven parts. First was a foundation called the &lt;em&gt;trivium&lt;/em&gt;, composed of grammar, logic, and rhetoric. Following that was the &lt;em&gt;quadrivium&lt;/em&gt;, which was arithmetic, geometry, music, and astronomy (numbers, numbers in space, numbers in time, numbers in time and space). The trivium (literally, “three ways”), is a framework for learning.&lt;/p&gt;
&lt;h2 id=&quot;grammar&quot; tabindex=&quot;-1&quot;&gt;&lt;a class=&quot;header-anchor&quot; href=&quot;https://joshua.seigler.net/posts/the-trivium-a-tool-for-learning-anything/#grammar&quot; aria-hidden=&quot;true&quot;&gt;&lt;/a&gt; Grammar&lt;/h2&gt;
&lt;p&gt;Grammar is about gaining knowledge: collecting information, without judgment or analysis. It answers the questions “Who, what, where, and when?” This is possibly the most important step, since (depending on what you study) essential information may not be readily available.&lt;/p&gt;
&lt;h2 id=&quot;logic&quot; tabindex=&quot;-1&quot;&gt;&lt;a class=&quot;header-anchor&quot; href=&quot;https://joshua.seigler.net/posts/the-trivium-a-tool-for-learning-anything/#logic&quot; aria-hidden=&quot;true&quot;&gt;&lt;/a&gt; Logic&lt;/h2&gt;
&lt;p&gt;Logic is about gaining understanding. It answers “why?” This is the foundation for relating to the world. It has three components: filtration, correlation, and analysis. It places the information gathered into context, and eliminates inconsistency and resolves conflicting perspectives.&lt;/p&gt;
&lt;h2 id=&quot;rhetoric&quot; tabindex=&quot;-1&quot;&gt;&lt;a class=&quot;header-anchor&quot; href=&quot;https://joshua.seigler.net/posts/the-trivium-a-tool-for-learning-anything/#rhetoric&quot; aria-hidden=&quot;true&quot;&gt;&lt;/a&gt; Rhetoric&lt;/h2&gt;
&lt;p&gt;Rhetoric is about acting wisely: the application of knowledge and understanding, put into correct action. It answers “how?”&lt;/p&gt;
&lt;p&gt;Methodically applying this method provides a clear next step when encountering any unfamiliar topic. This is a powerful tool for methodically determining the best way to achieve your goals.&lt;/p&gt;
&lt;h2 id=&quot;resources&quot; tabindex=&quot;-1&quot;&gt;&lt;a class=&quot;header-anchor&quot; href=&quot;https://joshua.seigler.net/posts/the-trivium-a-tool-for-learning-anything/#resources&quot; aria-hidden=&quot;true&quot;&gt;&lt;/a&gt; Resources&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://triviumbinder.blogspot.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Trivium Binder Project&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.scribd.com/doc/59477946/Trivium-Method-of-Critical-Thinking-and-Creative-Problem-Solving&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Tragedy and Hope: Five page summary of the Trivium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.scribd.com/document/33744483/Trivium-Method-of-Thinking-vs-Other-Methodologies&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Shadows of the trivium in narrow disciplines&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</content>
    </entry>
</feed>
