企業として何のプログラミング言語にコミットするか
さまざまな用途向けに、さまざまなプログラミング言語が考案され、日々使われています。コンピュータの能力が低かった時代は、機械語に対応したアセンブリ言語に始まり、ALGOL 系の Pascal, C などに続き、コンピュータの能力や資源に余裕が出始めると、オブジェクト指向言語の C++, Java などに続き、さらに文法を簡易化したスクリプト系の言語に続いています。
現在のウェブプログラミングでは、生産性の高いフレームワークと組み合わせて PHP, Perl, Python, Ruby などがよく用いられています。また、同様にフレームワークと組み合わせて Java, C# などが用いられています。
業種、業界によってスタンダードもさまざまですが、特にウェブに関わる業界にいると、新しいものに目を奪われ勝ちになってしまいます。新しいものは試してみたくなるもので、RoR や Symfony といったフレームワークも試していたりします。
企業として何のプログラミング言語にコミットするか?ということは、
- 確保する人材
- 教育プログラム
- ソフトウェアのライフサイクル
個人の場合は、何で作ろうが構いませんが、企業としては、コストを掛けて生産、保守していくことになるので、あまり特殊なものは使えません。また、マーフィーの法則に従い、悪いタイミングで深刻な問題が発生しますので、
- メーカーによるサポートが充実している(作った人に聞ける。)。
- メーカーによるドキュメントが充実している(そこを見れば解決できる可能性が高い。)。
- メーカーによるコミュニティーが充実している(同じものを使っている人に聞ける。)。
- 社内に問題を解決できるエキスパートが居る(深部まで分かっている人に聞ける。)。
- ユーザーによるコミュニティーが充実している(同じものを使っている人に聞ける。)。
- 人材の確保のしやすさ。
SBI Robo では Java を選択していますが、上の基準では、ドキュメントの質と量が高い Microsoft も選択肢となり得ました。が、人のつながりで Java 系の人材の確保を進めました。
上のリストで、人に聞ける という箇所を強調しましたが、ググって出てくる古い誤った情報ではなく、人に聞ける という点が、実は重要なのかなと思います。
森田::