良いあそなすちゃん

良い方のあそなすちゃんです!

ぼっち開発のススメ

ぼっち開発をし続けると、属人性がどんどん深くなる。

例えば、ぼっち開発をしているところに新しく人が入ってきたときに、インフラ運用からサービス開発まで特定の1人だけが知っている状態だと非常にまずくて、新しくきた人に仕事が渡せなかったりする。

そういう属人性を排除するために自分が面倒をみなければならないことを減らすのも良い手段だと思う。Webアプリケーション開発なら。インフラはHeroku, Sqale。死活監視はNewRelicとかさ。

で、多くの場合はすでに運用が始まっていて、HerokuやNewRelicにそう簡単に移行できることも多くなく、便利な外部サービスに頼らない方法を取ることになる。

そうするといずれは前述のようになるので、属人性を回避するためにドキュメントとかあったりするわけだけど、ぼっち開発してるとドキュメントを書くことが疎かになったりする。疎かになるのは多分だけどひとりでやっている時にドキュメントを書くこと自体に価値がないからだと思う。将来的には資産として価値が生まれるかもしれないけど、ぼっち開発ってのは大いにして仕事量が結構多い感じだったりするし、ドキュメントを書いている暇があれば次のタスクをこなさないとってなる。悪循環で最悪だしドキュメントは書くべきだ。しかしドキュメントを書く手間やスイッチングコストもある。

ドキュメント書き方たくさんあって、メジャーなのはWikiだったりするけど、Wikiをぼっち開発の人が書いてると、情報が陳腐化しているのにそれを更新を忘れたりする。更新忘れてると新しく来た人がそこでハマることもあるし、良くないから、陳腐化した情報も適宜更新しようとすると今度はタスクをこなす時間が減ったりする。

日々移り変わる、僕らを取り巻く状況を逐一ドキュメントに残すことを頑張っても仕方ないと思う。

ドキュメントのことを悪くいうつもりはないけど、陳腐化する情報が最悪なだけで、それはpuppetなりVagrantなりDockerなりソフトウェアテストなり、そういうコードを読めば解かる or 説明できるようなものにしてればいいとおもう。

ドキュメントはほっとけばすぐに死ぬ生き物だ。コードは僕らが開発をし続けるかぎりはそいつは生き続ける生き物だ。そういう意味ではr7kamuraさんのautodocは素敵な思想だと思う。生きているコード(テスト)から自動で新鮮なドキュメントを生成してくれるのはすごくいいんだ。寿司みたいだ。美味しそう。

r7kamura/autodoc · GitHub