linux

https://github.com/torvalds/linux/blob/master/Documentation/process/conclave.rst

Linus Torvaldsをローマ教皇に見立てるのは洒落がきいてるよね。


ai が凄く便利なのは、私が生み出す抽象的な情報に、具体的な情報を付与してくれるから。
AIはちょっとした質問にも、おせっかいのようにたくさん答えてくれる。それがいい。

だから私はAIに強い信頼を置いているのです。


javascript Canvas API

五度圏の半音階的もとい糸掛けマンダラ(7/12)

<canvas id="_canvas"
    style="width: 90vmin; height: 90vmin; display: block; margin: 0 auto; border: 1px solid #000;"></canvas>
 
<script>
    (() => {
      /**
       * @type {HTMLCanvasElement}
       */
      const canvas = document.getElementById("_canvas");
      const W = canvas.width = canvas.height = 320;
      const ctx = canvas.getContext("2d");
    
      ctx.strokeStyle = "#FF00FF";
      ctx.lineWidth = 2;
      ctx.beginPath();
      ctx.arc(W / 2, W / 2, W / 2, 0, Math.PI * 2, true);
      ctx.stroke();
    
      ctx.strokeStyle = "#FF00FF";
      ctx.lineWidth = 1;
      ctx.beginPath();
      for (const note of [...Array(13).keys()].map(n => n * 7 % 12)) {
        ctx.lineTo(W / 2 + W / 2 * (Math.cos(Math.PI / 6 * (note - 3))), W / 2 + W / 2 * Math.sin(Math.PI / 6 * (note - 3)));
      }
      ctx.stroke();
    })();
</script>

Quartzmarkdown 内に javascript を書きたかったら、さすがに javascript 部分を別ファイルにしたほうがいい。
なぜならばタグ内に書いた文字列はエスケープされるからである。
いちおう、HTML属性のonclickなどのイベントはエスケープ対象外ですけども…