先日、 GitHub で人生初の オープンソースプロジェクト に貢献してみた。
オープンソースプロジェクトは世界中にたくさん存在し、GitHubなどのプラットフォームを介して初心者~凄腕ハッカーまでありとあらゆるプログラマーが参加している。
私は当初、
「なんで稼げるわけでもないのに自分の時間と労力を費やしてまでタダで貢献したがるのだろう」
と恥ずかしながら疑問に感じていた。
しかし今回ふと思い立ち、勢いで参加して プルリクエスト(「ここのコード修正しました」と提案すること) を送るところまでやってみた。
最初だったので 「First Contributions」 などを参考にしながら、初心者用のプロジェクトでいくつか参加してみた(初心者歓迎のプロジェクトは このサイト からも確認できる)。
まだ簡単なプロジェクトにしか参加していないが、オープンソースの世界に足を踏み入れてみたことで、 上記の疑問が愚問である ということに初めて気付いた。
コードを愛する真のプログラマーやエンジニアからは 「メリットとか考えてる時点で二流、いや三流以下だ。」 と言われそうだが、あえて書きたい。
プログラミング学習を始めて少し経つと、背伸びして「何か凄いアプリやサービスを作りたい」という気持ちが湧きおこってくるのは人間として当然のことだと思われる。
そのように思い始めてしまった人達にオススメしたいのがまさに オープンソースプロジェクトへの参加 だ。
世界中で既に愛されているアプリやツールの改善案を誰でも送ることができるのだ。
そう、見方によってあなたは Facebookの開発者 にでも Microsoftの開発者 にでも何にでもなれるのだ。
「自分は世界中の人が利用しているサービスに貢献しているんだ」
という自意識が芽生えることで(それがたとえ誇大妄想だったとしても)自分に自信がつき、 「次は世界をどのように救ってやろうか」 というアグレッシブで前向きな気持ちで充満すること請け合いだ。
これは 「マズローの欲求5段階説」 のまさに 第6段階『自己超越の欲求』 に到達していると言えるのではないだろうか。
コントリビューター(貢献者)として活動し始めると自然と色々な人種、性別、文化の人達と関わり合うことになる。そうすると次第に信頼関係が芽生えて世界中に 同志 と言える仲間が増えていくことになる。
「世界中の仲間たちと素晴らしいプロダクトを作り上げていく」
と考えたら何だかワクワクしてこないだろうか。
「何か面白そうなプロジェクトないかな」 と探し回ることはすなわち 「流行りだしそうな魅力的なプロダクトないかな」というのとほぼ同義だ。
自然と新しい技術やサービスに意識が行くようになるので、周囲の人達に 自分の情報通ぶり を自慢できるのは言うまでもない。
プルリクエストを送る前と送った後で私の意識は明らかに変わった。想像していたより遥かに。下衆な盗人から仙人に生まれ変わったような気持ちだ。
オープンソースプロジェクトに参加したことがない人はぜひ参加してみてほしい。