複数のプログラミング言語を学ぶメリット

プログラミング言語

10 Programming Languages You Should Learn in 2014より


僕が最近触るプログラミング言語をあげておく。
仕事は C#JavaScript
プライベートで先々週が Ruby、昨日は PHP だ。


メリット

ググる対象が広がる

ググる言語が増えれば正解にたどり着く可能性も高まる。
昨日公開した PHP のYammer API ライブラリ の話。


実は Yammer API をいじる試みは前にやっていたんだけど、認証周りがうまくいっていなかった。
少し前に Ruby を始めたことで Ruby の公式 Gem を読めるようになった。
読んでみると数分で問題は解決した。
原因は、AccessToken を HTTP Header に入れればいいだけというショボい話。


こんな感じで「既にある別の実装」という手がかりが手に入るのは大きい。
知らない言語を読むのは拒否反応が出るけど、ちょっと読めるレベルになるのは簡単。
Ruby なら Railsチュートリアルの第4章を読めばいい。


飽きにくく、面白い

僕は飽きっぽくて、一個のことをひたすらやるのがニガテだ。
マルチタスクは好きじゃないけど、煮詰まったときにひたすら考えるのはもっと好きじゃない。
煮詰まったときに何かを閃くのは、僕の場合はシャワーを浴びてるときが多い。
どうやら頭の違う部分を使うといいらしい。


これが違う言語をいじっているときも同じで、ふとしたきっかけで新しいひらめきにつながったりする。
Rails をいじっていると「CakePHP ではどうなってたっけ?」とか、言語(やフレームワーク)をまたいで疑問が湧いてくるので、知識を深堀りしようとするきっかけになる。
知識欲が刺激される状況に身を置くのはなかなかいい。


技術の幅が広がる

月並みだけど、要求を実現するのに一番早い方法を選択できるようになる。


小さいWebアプリを好きな場所に手軽に公開するには PHP は向いてるし、
多くの公開されたライブラリを活用することで要求に集中するには Ruby が向いてる。

こんな感じで自分なりの選択フローを見つけていくのがいい。


リスクヘッジ

プログラマーとしての寿命に対してのリスクヘッジ
言語の流行り廃りにはイチ個人、イチ企業レベルでは抗えない。


最後に

今回あげたメリットは、個人視点での話。
会社視点では、言語を絞ったほうが人を確保しやすいし、教育コストも下がる。


少なくとも個人視点ではメリットが大きいので、普段触らないものにもチャレンジしてみるといいと思う。


7つの言語 7つの世界

7つの言語 7つの世界