Atomicということ
Evergreen notes should be atomic
この「Atomic」とはどのような意味か。
日本語では「原子的」ということ。
単に記述量が少ない、ということではない。
よって、長く書かれた文章を細かく分割すればそれでAtomicになるわけではない
まずコードを書く。
そのうち、似たことを複数回処理していることに気がつく
その部分を取り出し、処理を抽象化し、別の関数として切り出す
そのような処理がほどこされたものが原子的だと言える。
つまり、Atomicizationが必要。
実例で検討した方が早いだろう。
Atomicizationがなされた情報の記述群:
Atomicizationがなされていないページをこのプロジェクトにコピーした後、このプロジェクトで扱いやすいように記述を変え、ページを切り出した。その操作がAtomicization。
単純に短く分割しているだけでないことに注目されたい
この世界は、原子として存在するわけではなく、ページは原子的に記述されるのが普通ではない。むしろ、Atomizationを通すことで生まれる(扱える単位として取り出せる)のがatomicということである。
たとえば今rashita.iconは、Atomizationの部分をリンクにしようか検討している。そうした場合、このページの記述もまた変わっていくだろう。 つまり、atomicであることは、書き換え不能な状態にすることも意味しない。
Atomicizationが必要(脳内の情報のストレートの把握は、Atomicにはなっていない)という点で、これは面倒な行為である。知的作用が必要な作業である。だからこそ、知の営みには欠かせないのだと言える。 それを文章や言葉で考えると、
全体から切り出した“コア”に、新しい「地」を与える行為
脳が脳だけでは生きられない。少なくともシリンダーに浮かべないと。人工心肺につながないと。
切り刻むことを繰り返して刻みすぎると、プロジェクト以上のレベルで見たときに、「地」の総量が増えてしまう可能性はあるのでは。 分解が細かくなるにつれて、「地」の量と比率は下がっていくと思われるが、決してゼロにはならない
未来の自分だって他者のひとつだから、地がゼロでは理解できなくなる
「銀行に行って手続きする」タスクが発生したとする。その際に委任状が必要だったとする。
そのとき、プロジェクトノートの中に委任状テンプレートのPDFを保存するのが一般的だが、それを独立させる。つまり別のノートとして保存する。その後、プロジェクトノートから委任状テンプレートのノートにリンクを張っておく。
https://gyazo.com/a8111945d34e6498554820589a881166
このように別ページとして切り出しておくと、別のプロジェクトで委任状が必要になったときに、同様の形式でリンクを張ることでこの情報が再利用可能になる。
(下線はいっきikkitime.icon)
⇒それを求めていくことがatomic?
たぶん、私には、委任状テンプレートのような再使用性を持つ、知の、ノート作りというのはどこかで退屈を感じるだろうな、と思う。 何かを誰かに向かって、申し立てていく感じがしなくなるから?
あと、プロジェクトノート本家の、便利さという名のサービス満点度が、すこし下がる。
rashita.iconプログラミングにおけるリファクタリングは、新しくコードを書くことに比べれば「面白さ」は小さいので、たぶんそれと同じなのだと思います。その局所的な退屈さを通っておかないと、後々のコード保守の手間が等比級数的に膨れ上がってしまうのでやる、という感覚。 プログラミングにおけるリファクタリングも、2通りある気がするnishio.icon
「今の設計は汚いのできれいにしておかないと将来困りそうだ」と感じて事前に構造を変更する活動
「今実装したいものをこのコードに追加しにくい、設計を変える必要がある」と感じて具体的な目的のために構造を変更する活動