オープンソースは「いくさ」だ!!(その1)
会社のオープンソースビデオプラットフォームプロダクト"Panda"のサポート兼開発に関わってからはや一ヶ月たちました。
期間限定とはいえ「オープンソースで飯を食う」待遇になったのはかなりラッキーだと思います。
今まで「オープンソースプロジェクトに関わってみたい」という気持ちはあっても、時間がなかったり、めんどくさかったり、または自信がないなどの理由で未経験な「オープンソースバージン」の方にむけて、私のここまでの経験を「いくさ」を例えに紹介していきたいと思います。
その前に比較として、まずは既存のクローズドな開発について触れていきます。といっても私の経験の中なので、プロダクト開発ではなく、受注開発に関してですが。
- クライアント向けプロジェクトは「道場の中での一対一の真剣勝負」
受注開発の場合、すべての神経はクライアントの要求にむけられているといってよいでしょう。お金をいただいて仕事をしているので、それは文字通り真剣を用いたもの。竹刀でも木刀でもありません。
もちろんシビアな目をもったクライアントのもとで仕事をすることで、自分の能力が高められるのは確実ですが、オープンソースプロジェクと比べて2点の違いがあると思います。
一つ目は、仕事の成果は見た目や機能性、そして開発スピードに重きが置かれること。バグが少ない製品がよいにこしたことはありませんが、コードの美しさや、どれぐらいテスト用コードを書いたかということが日の目を見ることは比較的少ないと思います。
二つ目は、「道場=クローズド」
自分のコードの質を知るのはテスターか、または一緒に開発をした同僚に限られます。もちろんクライアントやエンドユーザーも成果物の使い心地を通してコードの質を推測することはできますが、重要視される点は上に述べた一つ目の事項に限られる傾向があります。
では逆に私の体験したオープンソースプロジェクトはどんなものだったのでしょうか(続く)。