あと「役に立たない CAP 定理」というコラムもおもしろい。CAP 定理とは次の3つはすべて成り立たず、2つを選択することを強いる。
一貫性(Consistency)
可用性(Availability)
分断耐性(Partition tolerance)
CAP 定理は歴史的にデータベースのトランザクションのトレードオフについての議論の出発点として引用され、有名な定理ではあるが、分散データベースの研究者の中では1970年代から知られていたことであったらしい。そして、ネットワークを介した分散システムは、分断耐性が必須 (ネットワークが切断しないことはないから) であることから一貫性か可用性のどちらかを選択するしかない。ここで一貫性とは線形化可能なシステムを実装することだが、これはパフォーマンスのデメリットが大きい。そのため、現代の多くの分散データベースは線形化可能性を提供しないことを選択しており、結果として可用性と分断耐性を選択することになっている。したがって、CAP 定理から議論を始めることは無意味であると言う。
冒頭の格言で kafka というキーワードが気になったので原文を探して (deepl で翻訳して) 読んでみた。一般論で考えたらこの問いの答えは停止してしまう方を選択するように私は考えてしまったが、原文の記事によると、この答えはアプリケーションに依るという。ダウンタイム=データの損失という特性のアプリケーションであれば、間違っている可能性があってもすぐに復旧して動かした方がよいという場合もあると言っている。kafka はどちらかと言えば、間違っていても動き続ける方のシステムに分類されると思う。メッセージの到達保証も At Least Once だし。
そろそろお仕事をしないと会社の財務がやばいので選考を受けている。今日は2社の選考を受けた。1つは Go の開発案件、もう1つは Java の開発案件。どちらも業務内容はマッチングしていて勤務形態もフルリモートなのでいまの生活のまま、お仕事ができる。1社は正式にオファーが届いて、もう1社もおそらくオファーがくる想定。どちらかを選択する。転職だと面接を何回もして選考を受ける必要があるけど、業務委託だと大半が1回で決まる。昔フリーランスやってたときもそうだったかな?調整の管理コストが下がって望ましいことではある。もう私の中では承諾する方の案件は決まっているけど、念のため、1日寝かして顧問さんとも相談した後、最終決定しようと思う。
Webデザイントレンドのよりみち の金朝ツメトギに参加した。今回から「つめとぎ」から「ツメトギ」のカタカナに名前変更してパワーアップ?したみたい。本を読んでもよかったんだけど、チャット欄でコメントしながら live をみてみようと思って普通に聴いていた。#金朝ツメトギ というハッシュタグは私がコメントして生まれた。コミュニティ的に盛り上げるならタイムラインを共有した方がよいとは思う。youtube live のチャットにコメントした方がいいか、twitter で気軽にコメントした方がいいか、まだよくわかってない。youtube のチャット欄のコメントの一覧性とか、普段使いのツールになっていないせいか、なんとなく抵抗感がある。いま参加者が少ないせいか、コメントするとスピーカーがコメントに反応して返答したりするので、あまりカジュアルに書き過ぎるとスピーカーの作業の邪魔にならないかな?とか思ったりもした。youtube live という勉強会の人間関係の距離感が難しい。
前日(というか今日)に4時まで起きてたのは申告書の内容確認や記入をしてたから。せっかく申告書を作成したのですぐ納付したくなった。それで新長田の合同庁舎まで申告に行ってきた。eltax は相変わらず windows 向けの DL 版でないと申告できそうにない。WEB 版もあって一部対応しているようだけど、よくよく調べていくと DL 版でしかできないようにみえる。毎年 WEB 版でできるようになっているかどうかを調べている。この互換性を調べるような作業を都度やるのが面倒になってきた。vr 用途 (oculus link を使いたい) にも使えるので windows マシンを購入してもいいかもしれないと考えるようになってきた。申告書を郵送してもよいけど、1時間もあれば往復できる距離なので気分転換も兼ねて合同庁舎に出向いてきた。