0007. OSSについて(後編)

こんばんは。みなさん。さて、今日はSelf-hosted LiveSyncを更新してます。
なんと、v0.15.6以降、Sync on saveをONにしていると同期が途中で止まってそれ以降なんも起こらなくなる という状態でした。詳細なバグレポートに感謝ですね。本当にありがたい。

このように、OSSは問題があっても、ほとんどの場合はそれほど時間が経たないうちに第三者が問題を発見してくれたりします。それをもって制作者が修正したり、他の人がcontributeするわけですが、これこそが昨日触れていた、Self-hosted LiveSyncが基本的にOSSを使用し、またSelf-hostedな状態を維持できる状態にこだわるもう一つの理由です。もちろん、もしオプションとしてClosedなものを使うような実装をコントリビュートしてもらえれば、できる限り受け入れますよ。そういう自由もあってよいと思います。あと、フォークも全然歓迎ですよ。Ninja cursorにはいつの間にかObsidian-dashing-cursorという派生が出来てます。

この、Self-hosted、または選択の自由という点。私も考えたくはありませんし、いつまでも愛用していたいですが、もし、Obsidianの更新が突然途絶えてしまったらみなさんどうしますか? ノートに関してはmarkdownファイルとして存在するので問題ないとして、同期サービスはどうなるでしょうか。そのとき、Self-hosted、すなわち自分で構成出来るというのは自由度がかなり上がります。
また、同期というのは、クライアントとサーバがあって成立するものですので、必ずどちらかはたとえ低速でも高品質でないと話が始まりません1。また、同期アルゴリズムも同様で、こんなに難しいものはほかに存在しないとすら思っています。これを、沢山の目が確認し、問題があったらその問題自体がまず公開されている2OSSで解決できるのは僥倖と言えるでしょう。品質と同時に、安全性がソースコードをもって自分たちで確認できる、というのも一定の人々にとっては大切な点です。

あるいは、Obsidian以外とも同期したい、なんてニーズはないですか? 実は既にあってFileSystem-LiveSyncというものも作ったりしています。検証可能な選択肢というのは、そのものの幅すら広げていきます。

一方、この目が機能しなくなる事ももちろんあって。いろいろなものを見てきて思っていますが、ほとんどの場合それは、人々の興味の喪失、失望や怒りによって引き起こされる、退廃が原因です。やはり、我々は誠実でないといけないですね。作ってる側としても、もちろん作者もちやほやしてもらえると嬉しいですが 、作品を褒めて紹介してもらえると本当に嬉しいですよ。

と、言うことで、私もCouchDBを称え、CouchDBに関する名言で締めたいと思います。

The way I like to think about CouchDB is this: CouchDB is bad at everything, except syncing. And it turns out that’s the most important feature you could ever ask for, for many types of software.

( Jason Smith )

2022/10/22 40分