- 静かな土曜日の午後、コーディングのための数時間を確保し、プロジェクトに没頭しようという意気込みでターミナルを開く
- プロジェクトディレクトリには、半ばまで実装されたアイデアや中断された進行中の作業がある
- どのプロジェクトを選んでも、本来の問題だけでなく新たな課題にも直面する
- IDEを開き、最新の変更を取得してコミット履歴を確認する
- 未完成のフロントエンド作業、想定外の制約にぶつかったライブラリ統合、過剰なエンジニアリングで複雑に作られたアーキテクチャなどを見つける
- 進展を見せるために、数時間かけてコードのリファクタリング、デバッグ、CSS作業などを行う
- 割り当てた時間はあっという間に過ぎ、席を立つ準備をする
- 楽観的に始めたのに、フラストレーションを感じ、自分の力不足を覚える
- コードベースは依然としてTODOコメントと半ば実装された機能でいっぱいだ
- 情熱、苦闘、失望のサイクルは非常に見慣れたものになる
- プロジェクト・ヒドラ効果: 進展しても新たな課題が次々に生まれる
- このパターンは壊せないように思えるが、この怪物を飼いならす方法を見つけようと決意する
- 終わりなき着手と不満の残る中間状態から抜け出すための戦略を模索する
- 完成の技術を学び、ヒドラを打ち倒し、完成したプロジェクトの満足感を味わいたい
プロジェクト・ヒドラの誘惑
- プロジェクトが進行中である間は、無限の可能性を持っている
- プロジェクトを「完了」と宣言した瞬間、外部と内部の批判にさらされる
- 新しいアイデアの興奮と完成への恐れが、プロジェクトの遅延を引き起こす
- 未完成のプロジェクトは潜在力があるため、より魅力的に感じられる
- 新しいプロジェクトを始めることは、完成させることより簡単で、より生産的に感じられる
- 何かをしている限り生産的だという錯覚を与える
- 個人プロジェクトには締め切りがないため、完璧主義に陥りやすい
- 成功に対する恐れも存在する
決して終わらせないことの代償
- プロジェクトを完成させることで得られる満足感は、始めることとは比べものにならない
- 未完成のプロジェクトは精神的な負担になる
- プロジェクトを完成させる過程で得る教訓は、始めることから得るものとは異なる
- 本当の技術的成長は、最後の厄介な問題を解決する完成の過程で起こる
- 終わらせていないプロジェクトは自信を損なう可能性がある
- プロジェクト後半には、最適化やリファクタリングなどの貴重な学習経験がある
- 未完成のプロジェクトは頭の中のスペースを占有し、創造性と生産性を低下させる
- 完成したプロジェクトは、フィードバックを受ける機会を提供する
- 完成したプロジェクトを世に出す喜びを、自ら否定してしまう
プロジェクト・ヒドラを飼いならす戦略
- 「完了」を定義する: プロジェクト開始前に「完了」とは何かを明確に定義し、これを文書化してスコープの拡大を防ぐ
- MVPを受け入れる: 完璧を目指すのではなく、「十分に良い」状態を目標にする。まず基本バージョンをリリースし、後から改善する
- プロジェクトに時間制限を設ける: プロジェクトに締め切りを設定して緊急性を持たせ、機能拡張を防ぐ
- 小さな完了を練習する: 小さなプロジェクトや作業を定期的に完了し、「完了する筋肉」を鍛える
- アイデアと実装を分ける: 新しいアイデアが浮かんでもすぐに実行せず、アイデアログに記録する
- 完了を祝う: プロジェクトを完了するたびに祝うことで、ポジティブな強化効果を得る
- 責任を受け入れる: プロジェクト完了への責任感を持つために、パートナーを見つけるか、公に約束する
これからの道
- 習慣や考え方を変えるには時間がかかり、一貫した努力が必要だ
- 新しいプロジェクトの誘惑や、不完全さに対する恐れがあるかもしれない
- 「完了する筋肉」を鍛えることが重要だ
- プロジェクト・ヒドラと正面から向き合い、計画を止めて実行に移そう
GN⁺の意見
- 開発者なら誰もが共感できる、プロジェクト未完の問題をうまく扱った記事
- プロジェクトを終わらせられない理由と、それによるネガティブな影響を明確に説明している
- 実用的で実践可能な解決戦略を提示しており、役に立ちそうだ
- 開発過程における心理的側面とモチベーションの重要性も強調している
- 完璧主義や新しいものへの誘惑など、開発者の慢性的な問題を率直に語っている点が印象的だ
- Atomic HabitsやDeep Workのような自己啓発書のアイデアを、開発の文脈に適用している点も興味深い
- 個人プロジェクト管理に苦労している開発者に薦められる記事
3件のコメント
わあ……普段から私がとても重要だと思っている内容ばかりで、あまりにも共感できる話の連続だったので感嘆しながら読みました! 表現が違うだけで、似たような概念を主張しているのでとてもうれしいですね。
私は「60パーセント満足」という表現をよく使います。基本的に、欲も情熱もあふれている人ほど、自分が考える60パーセントという曖昧な満足度でプロジェクトを締めくくろうとするべきで、そうしてこそ壊れた完璧主義から抜け出せるのだと思います。
私もとても共感しながら読んだのですが、コメント欄に私と似たような表現を使っている方がいて、さらに驚きました!
60パーセントという数値が絶妙ですね。洞察をありがとうございます。