以前に書いた「情報システム部の残念な秘密 」のなかで(元ネタは「IT業の残念な秘密 @ Geekなぺーじ 」)、「4. 新しい技術に触れているよりも古い技術の子守をしている時間の方が長い」というものがありました。
特に情報システム部門では、社内システムの面倒を見ることが多い特性上、その法則の影響を強く受けます。
新しい技術を使う特段の理由がないから、半ば制約のように。
SIerでも、新規にシステムを構築する際に、お客さんの要件によってプログラミング言語をころころ変えるということはあまりないと思います。
既存システムに手を加えるなら、そのシステムのプログラミング言語を採用した方がよいという場合がありますが、プログラミング言語自体が業務やサービスの仕様に関わってくる事はほとんどありません。
そこで言語を変える理由は、そこでのノウハウを他に活かそうというと意図的な場合や、SIerが提供できるサービスの幅を広げようという(うちではRubyの案件も多数経験がありますよとか)戦略的な意味合いが含まれているといった場合になるかと思います。
話を戻して、情報システムはそのような理由が特に無いため、ノウハウが社内に豊富にあり、安定している技術を選んで開発や保守を進めます。
社内情報システムを安定して運用するという事が目的であり、先進的な技術を使ってシステムを構築するというのはそのメリットが見当たりません。(情報システムが社内の研究機関のような役割をかねているならありえるかもしれませんが)
「世間ではこういった技術が取り上げられている。社内エンジニアのスキルレベルを向上させるためにも是非採用したい」と言ったところで、今の生産性と新しい技術での生産性が変わらなければ、理由にはなりません。
その言語の保守サポートがなくなり、今後システムを安定して動かす事ができなくなるリスクがある、といったぐらいであれば別でしょうが。
なので取り扱うプログラミング言語も、基幹系のシステムならJavaや.NETを、軽量システムならPHPなどといった幾つかの候補の中で選択して開発を進めます。
もう一つ制約としては、そういったシステムは、お客さんごとに異なる独立した案件ではなく、互いに連携することが多い(サブシステムとして組み立てられるとか)ため、互いにシステム仕様をそろえておいた方が良いという事で、ますます固定化していきます。
ネット上では様々な新技術が取り上げられて騒がれていますが、情報システム部にとってはそれらの技術は高嶺の花であり、手を出したくても届かないものです。
それが扱えるころには、十分に技術が安定したころになり、その頃にはまた新しい技術が世間で騒がれているという状態になるかと思います。
まぁ、一つの技術をとことん追求したいという場合(それが世間では枯れている技術というのが前提ですが)、情報システム部門なんかは求めやすい場所になるのかもしれません。
関連記事