dm-writeboostが星100を成し遂げた

ライトブーストは成し遂げた

おれが開発しているdm-writeboostの星が100に到達した。 星100のソフトウェアを一つ持つことはソフトウェアエンジニアとしての目標の一つだったから、すごく嬉しい。 これでおれも駆け出しエンジニアを脱出というわけだ。

CHANGELOGを見ると、v1がリリースされたのは2015年5月のことのようだ。ちょうど6年前のことだ。

2015-05-10  Akira Hayakawa  <ruby.wktk@gmail.com>

	* v1.0.0

それからまもなくして、Debianのパッケージメンテナをやってるドミトリーに評価されて、 Debianに入った。それからUbuntuにも広まり、今のメンテナンスは Cannonicalの人がコードを書いてくれて、おれがチェックするという流れになっている。

懐かしい。パンツ一枚になって汗だくでファックファック叫びながらデバグしていた頃を思い出す。

ストレージはオワコン

ライトブーストはおれの中では一切の改良をする気はない。 また、要求されない限り修正する気もない。 メンテナとしての責任感はあるが、興味自体は失っている。

第一に、おれはもうRustしか書きたくない。Rustならば極めて安全に、しかも高速なコードが書けるのに、 他の言語を使う意味がよくわからない。あらゆるものをRustで書くべきだ。 Rust以外の言語はすべてゴミだと思っている。非生産的なことに付き合う暇はない。

第二に、ライトブーストを理解出来る人は少なく、 就活のネタにならないからやりたくない。 おれがこの5年くらいでわかったのは、 一般的には、HDDのIOをSSDにキャッシュする(デバイスの仮想化)というだけでも何のこっちゃという世界であり、 ましてやログ構造化と言い出すとそれ自体が何を表すかわかる人は少なくて、 Linuxカーネルとなるともはやコードを読み書きするものでないということだ。 おれにはやりたいことがたくさんあるので、 ことさら理解されないものに大量の時間を注ぐことは出来ない。

ストレージというものは、 現代的には、HDDとSSDの性能が違うこと(とにかくSSDは速い!!でOK)、 OS内ではデータをメモリキャッシュしていることを知っていれば上出来で、 それらもほとんどの場合はクラウドサービスで提供されるものを使うだけだから、どのみち細かいことを考える必要もない。 アプリケーションだけを考えればよいのだ。 実のところ、ブロックシステムとファイルシステムとデータベースの違いがわかる人も ほとんどいないのではないかという気がしている。

次の星100へ

というわけでおれの心は次の星100へ。

今、おれがもっとも期待しているのがRaft実装lolだ。 これはすでに星64。 ライトブーストがそうだったが、ストレージの仮想化モジュールに興味を持つ人はごく少数だし、 Raft合意アルゴリズムに興味を持つ人もごく少数だ。 だから、星は得にくい傾向にはあると思うが、それでも本当に良いものならば評価されると信じている。

lolは、おれの自信策だ。自身のベストショットとも言える閃きが盛り込まれている。

これをもっと伸ばしていくことが次の目標だ。 そのために次バージョンの0.8では、大規模なクリーンアップを予定している。 Raftアプリケーションを書く機会はそこまで多くないかもしれないが、 その際にはぜひ使ってみてほしい。

他にはルービックキューブのソフトウェアrubikmasterも作っている。 これもやはりルービックキューブのライブラリに興味がある人はほぼいないだろうから、 星はなおさら期待出来ないが、非常に良い設計が出来ていると感じている。 今はルービックキューブの描画をしようとしているところだ。自分だけのキューブがほしい。