なぜ開発者にサイドプロジェクトが必要なのか? 〜10年分の失敗と学びから見えてきた本当の価値〜

Wait 5 sec.

オープンソース活動、自分用のツール開発、技術ブログ……。本業以外で何かを作る「サイドプロジェクト」は、いまや開発者にとっての定番になりつつあります。開発者のBohdan Liashenko氏はブログ記事「Why every developer should have a side project: My 10-year journey of failings」を公開し、自身の10年にわたる挑戦と失敗から、サイドプロジェクトの本質を読み解いています。同氏によるとサイドプロジェクトのメリットは以下の通りです。スキルの拡張:本業では経験しない領域(UX、マーケティング、経営など)も習得可能キャリア強化:ポートフォリオや個人ブランドが構築でき、採用側にも好印象副収入の可能性:うまくいけばビジネスとして成立する可能性も個人の成長:「コードを書く人」から「プロダクトを作る人」へ進化できるサイドプロジェクトを始めるにあたり「特別な発想」が必要だと思いがちですが、実はそうでもありません。Bohdan氏は普段使っているツールの不満点を改善する方法や、趣味や専門知識をかたちにする方法、完全オリジナルにこだわらず、既存アイデアの改良する方法など、アイデアの生み出し方のアドバイスも行っています。10年間の成功と挫折の歴史Bohdan氏は実際にさまざまなサイドプロジェクトを手がけており、特に以下の3つが成功を収めています。Under-the-hood ReactJS: Reactのソースコードを徹底的に読み解き、ビジュアル付きで解説したOSS書籍。GitHubでスターを6.6k以上獲得し、Facebookから面接のオファーが来るほど注目された。js2flowchart: 同書籍の副産物でJavaScriptコードを自動でSVGフローチャートに変換するOSSツール。GitHubでスター7.1k以上獲得。コードの可視化やドキュメント作成に役立つ。Codecrumbs: コードベース全体を可視化し、ファイル間の関係や重要ポイントをマークできるツール。B2B向けのPro向けも展開ただし成功だけではなく失敗もあり、Facebookの面接では不採用となったほか、ゲーム開発が資金難で終了したり、「競合がいない=ニーズがある」と思い込んで大苦戦したこともあったとのこと。どのエピソードも共通しているのは、「やってみて初めて分かることがある」ということで、完璧なプランを最初から用意するのではなく、動きながら修正していく柔軟さが重要だと強調しています。実践のコツと心構え同氏は、サイドプロジェクトに継続的に取り組むためには工夫が必要で、平日にタスクを整理し、週末に実装することで、集中力を高めやすいとアドバイスしています。また、小さく作ってリリースしフィードバックを受け取って改善する方法や、コア機能に集中し、複雑な処理はスターターキットや外部ツールに頼る方法も有効だとしています。ただし、何より健康を守ることは重要で「無理をせず続けられる範囲で」行うことが成功の鍵だと語っています。完璧より完了。一歩ずつ進めるサイドプロジェクトを「いつか始めよう」と考えているうちは、なかなか動くことができません。最初から完成度の高い作品を目指すよりもまず「出してみる」ことが何よりも大切になるのかもしれません。生成AIによる自動化が可能となった今、自分が日常的に感じるちょっとした不便さを解消することが新たなチャンスにつながる可能性がありそうです。なお、Redditでもこの記事に関する議論が行われており、サイドプロジェクトのメリットはみとめつつ、「趣味としてコードを書くべき」という期待は、開発者に余計なプレッシャーを与えるという懸念や、仕事外でもコーディングし続けると、燃え尽き症候群のリスクがあるという警告も寄せられています。全体的には強制されるものではなく、あくまで自分自身が選択しなければならいという意見が多いようです。