Evergreen notes should be atomic

  • 常緑のノートはアトミックであるべき
    • ノートは
      • 一つの事柄についてだけ書く
      • ただし、できる限り
      • その事柄の全体像を把握できるように書く
      • のがベスト
        • nishio.icon「一つの事柄についてだけ書く」の部分だけ広まってるけど、これは一文で二つの条件を示しているので「両立できるのがベスト」という意味であり、後者を犠牲にして前者をやるのはベストではないことに注意。
          • 下で「広すぎるとこういうデメリットがある、断片化しすぎるとこういうデメリットがある」と説明している
          • バランスが大事だということ
        • nishio.icon2023-10-06 そもそも無数的なので「一つ」の境界は自明ではない
    • そうすることで、トピックや文脈を超えたつながりを形成しやすくなります。
    • ノートが広すぎると、
      • ノート中の複数の考えの1つに対して、関連する新しい考えに出会ったときに、それに気づきにくい
      • また、そのノートへのリンクがあいまいになってしまう
        • nishio.iconこれは、あるノートへのリンクがそのノートの先頭につながる場合を暗黙に想定しているように思える
          • Scrapboxの行リンクやリンク位置へのスクロールの機能があれば、複数の考えが一つのページに入ってても、その部分を指し示すことができる
          • 僕も過去に行リンクは切り出しの機会と書いている。
            • タイトル自体でリンクするのではなく行リンクをするなら、それはその行からタイトルとは異なるものが書かれてるのではないか、ということ。関連している。
    • ノートが断片的すぎると、
  • ここには明確な指標や正解があるわけではなく、トレードオフの関係にあります。
  • この考え方は、ソフトウェア工学の「関心の分離(separation of concerns)」の原則に非常に似ています。
    • この原則では、モジュールは「1つのことだけについて」であるべきで、
    • そうすれば再利用が容易になるとしています。
    • しかし、ページを細分化しすぎると、モジュールを細分化しすぎた場合と同じように凝集性の問題(cohesion problem)が出てきます。
      • nishio.icon簡単にいえば細かく分ければ分けるほど、間をつなぐものの量が増えるということ。
        • ソースコードだとimport文が増えたり、サーバを複数台に分けると間の通信が増えたり
      • nishio.icon基本的にモジュールを細分化すればするほど継ぎ目でのオーバーヘッドがかさんで性能が悪化する
    • このように、常緑のノートのタイトルはAPIに似ている