Side projects

Salvatore Sanfilippo

サイドプロジェクト

原文は Salvatore Sanfilippo により に公開されました。 このブログを購読する

今日でRedisは6歳になった。僕にとってこれは信じられないほどの偉業だ。というのも、昔の僕はもっとすぐに次々と新しいものに飛びついていたからだ。過去に6年続いたものがないわけではないが、Redisのように、これだけ時間が経ってもなお、日々のエネルギーのほとんどを注ぎ続けているものはなかった。

どうやって新しいことをするのをやめて、たった一つの取り組みに集中し、仕事人生を大きく占有させることができたのか? 人生は限られている人間に、そんなことはあまりにも大きな犠牲だ。幸い、僕は単純にそんなことはしなかった。新しいことをやめることは一度もなかったのだ。

この6年を振り返ってみると、そこにあったのは途切れることのないサイドプロジェクトの流れだった。Redisに関係するものもあれば、そうでないものもあった。

1) Load81、子ども向けプログラミング環境。
2) Dump1090、ソフトウェア無線によるADS-Bデコーダ。
3) JavaScript製レイトレーサー。
4) lua-cmsgpack、Lua向けmsgpackのC実装。
5) linenoise、行編集ライブラリ。Redisでも使われているが、正直、我々の最優先事項ではなかった。
6) lamernews、RedisベースのHNクローン。
7) Gitan、小さなGitウェブインターフェース。
8) shapeme、焼きなまし法を使った画像進化プログラム。
9) Disque、分散キュー(現在開発中)。

そしてここには挙げていない、使い捨てのプロジェクトが他にもたくさんある。
興味深いのは、上に挙げたプロジェクトの多くが、ただ自分を楽しませるためだけの気まぐれなハッキングではなかったということだ。いくつかは他の人々のコードの中に活路を見出している。

サイドプロジェクトがあったおかげで、同じことを何度も繰り返すことに疲れ、消耗したときでも、別のことができるようになった。その後、またRedisに意識を戻し、楽しむための正しいモチベーションを見つけ直すことができた。小さなプロジェクトはクールだが、一つのプロジェクトに何年も取り組むことは、長い目で見れば他の人たちにより大きな価値を提供できるからだ。

だから今、僕は時間のおよそ20%を使ってDisqueという分散メッセージキューをいじっている。ということは、Redisの開発に残るのは80%だけ? 答えはノーだ。選択肢は、Redisに80%集中し残りを別に使うか、あるいは長期的に見てRedisへの集中が0%になるか、のどちらかなのだ。長く一つのことに取り組み続けるためには、新しいことを探求するための長期的な代替手段が必要なのだから。

サイドプロジェクトとは、より大きなプロジェクトを可能にするプロジェクトのことだ。しかも、しばしば新しい面白いプロジェクトの出発点にもなる。Redis自体、LLOOGGのサイドプロジェクトだった。サイドプロジェクトのせいでメインプロジェクトから離れることもあるが、そうなったとき、それはサイドプロジェクトが集中力を奪ったからではない。自分の時間のより良い使い道を見つけられたということだ。サイドプロジェクトの方が、メインプロジェクトよりも重要で、面白く、魅力的なのだから。

Redisは今日で6歳になったが、うまく歳を重ねている。より多くの開発者の注目を集め続け、毎週ユーザーにより少しでも多くの価値を提供するために改善を続けている。とはいえ僕にとっては、ユーザーが増えても、プルリクエストが増えても、プレッシャーが増しても、やり方を変えるつもりはない。今日のRedisがあるのは、僕たちが注いできた仕事と、6年という歳月にわたる忍耐の積み重ねの結果だ。同じ道を歩み続けるために、これからの数年も、いくつかのサイドプロジェクトを持ち続けるつもりだ。

追記:Damian Janowski氏が今日、Redisコミュニティに素晴らしいプレゼントをくれた。リニューアルされたRedis.ioのウェブサイトが公開された! http://redis.io。ありがとう、Damian!

HNでのコメントはこちら: https://news.ycombinator.com/item?id=9112250

この記事は「muse-spark-1.2-contributor」を使用して翻訳されました。

コメント