読者です 読者をやめる 読者になる 読者になる

テストステ論

高テス協会会長が, テストステロンに関する情報をお届けします.

(writeboost report) ライトブーストはこれからどうなってしまうのか

ライトブーストはマージを目指す. OSSの貢献がコードマージだけというと, これは偏狭すぎるし, 分野によってはその難易度に一票の格差がありすぎるので, 全くフェアじゃないが, 受賞には「これを励みにしてがんばりなさい」的なメッセージもあるだろうから半年くらいはがんばってみようと思う. ライトブーストのマージが難しい理由は以下、

  • ストレージカーネルである. バグはシステム全体を止めることもある.
  • ライトキャッシュのバグは特に深刻であり, データが消えて人間も消える.
  • device-mapperはレッドハットの人間以外のコードは基本的にマージしない.
  • 現在のLinuxカーネルは性能は十分と思われており, 性能向上ではなく機能拡張方面に進む傾向にある.
  • 性能系は数値を比較すれば訴求出来るので簡単だと思われてるかも知れないが, ストレージの計測は大変だし, データがあったとしても, それがユーザにとって嬉しいかどうかを訴求するには大抵足りない.
  • 実に4.5kのコードであり, 大きいものをマージするのは非常に難しい.

開発者本人の時間と金の問題でもある.

時間: 日立時代は, 会社の仕事が糞みたいに面白くなかったし, 会社で寝ていても文句を言われなかったので, 適当に働いて家に帰ってから夜中までライトブーストの仕事をして, 寝不足のまま会社に行って寝るということも出来たが, 今の仕事ではそうは行かない. すごいスピードで話が進んでいくし, 一日7.5Hも(雑務による息抜きなしに)がっつり仕事するとくたくたになってしまうのだ. 加えて, 私は転職してから肉体改造のために週3くらいでジムに通っているので, 筋肉のために睡眠を意図的に削ることはしたくない.

金: 家に帰ってきてから数時間であれば時間もあるが, それは他のことに使いたい. 仕事関連のことを学んだり, 別の新しい技術について学ばないといけない. 前者は, 仕事で成果を出して年俸を上げるためである. 後者は, 会社で新しいことをするため, 私のキャリアのためである. すなわち, 両者とも金の問題である. ライトブーストに関わることによる機会損失を埋め合わせるためにはそれなりの補償がいる. 1日に2Hやるだけでも, 月30万円(時給5000円換算)は欲しいし, マージされたら未踏プログラマ認定をして欲しい. さらに, マージ後5年間ライトブーストの改善をし続けたらOSS貢献賞も欲しい. それくらいでないと, やる気なんか起きない.

開発はというと, 授賞式の前日にPersistent Logging (plog)のデバッグが終わってdevelopにマージし, 私の構想の中にはこれ以上の機能追加はない. 少なくとも本質的なI/O処理については. アーカイブからのredoにはコード的に課題があるが, 私はアーカイブについて知識があるわけではないので, 他の課題が見えなすぎて手をつけづらい意味がある. 私の専門領域は, bioを受け取ってからそのackを返すまでである. どうだ狭いだろう参ったか.

あとはリファクタリング, ドキュメント(comment inline, txt, pdf etc), コミュニティとのやりとりとなるだろう. せめてやりとりの部分だけは会社の仕事として出来ると良いのだが.

ライトブーストのことだけを考えるのであれば, 日立にいた方が良かったかなと思うことがある. それほどまでに転職してから1ヶ月, モチベーションが落ちている. OSSというのは昔の研究と同じで, 貴族のするものなのだろう. ここでいう貴族とは, 現代的には金銭的にも時間的にも心的にも余裕がある人のことである. 今の私はこれをすべて失ったため, ライトブーストに関わるのは身を削られる思いなのである. 事実, Persistent Loggingの実装とデバッグは非常に困難であったため私は先週, 体調を崩した.

以上, 開発は辛いよという話であった. まぁとりあえずがんばるよ.