洋服の流行は、何年も前から用意され準備されているという。
同じように流行りの色も何年も前から決まっていて「順番に流行らせている」らしい
いろいろな現場で仕事をしてきたIT小僧は、多くの業種、会社、人々に接してきたからこそ言える
IT小僧は、断言する「適材適所こそ正解である」と
今回の日本のIT屋に一言は、
プログラム言語の流行り廃りについて IT小僧は断言する「適材適所こそ正解である」
と題して、エンジニアとしての視点と引き出しを増やそう
というお話です。
小難しい話を、わかりやすく解説してブログにまとめました。
最後まで読んでいただけたら幸いです。
スポンサーリンク
目次
「The death of Ruby?」は、大きな間違い
2017年8月7日
TechRepublicのライターAlison DeNisco氏は、
「The death of Ruby? Developers should learn these languages instead」
という記事を公開しました。
内容は
「米国電気電子技術者協会(IEEE)が公表しているプログラミング言語の人気ランキング」
に基づいての記事になっていて
「Rubyという言語の人気が落ちたプログラム言語で、他の言語を習得したほうが良い」
この刺激的なタイトルでそれまで人気のあったRubyという言語の人気がさらに落ちてきました。
しかし、ちょっと待ってください。
Rubyの生みの親のまつもとゆきひろ氏がTwitterでこう話している。
「Lispは死んだ」とか「Smalltalkは死んだ」とか言われないのに、今でもそれよりも遥かに広く使われているRubyが「死んだ」と言われるのは、その人気と裾野の広さによるものだ(と思うことにしよう)
(まつもとゆきひろ氏の2019年3月11日のツイートより引用)
プログラム言語って「人気」だけで仕事が増えるわけでもないし、「流行り廃り」でするもんじゃない。
「新しければ良い」とか「人気があれば良い」という発想でScalaやPythonで銀行のオンラインシステムで構築
というのは、大きな間違いである。
何事も適材適所、それは、プログラム言語や環境も同じことです。
儲かればCOBOLだって人気になる。
COBOLについてIT関連のニュースでよく見かけるようになりました。
通産省が出した「25年の崖」が発端だと思います。
数十年も動作しているCOBOLで書かれたシステムが、今日も元気に可動している。
COBOLだからと言って
「古臭い」
「そんなの終わってる」
「COBOLを捨ててCloudでERP」
そりゃ、誰もわかっているよ。
でもそのシステムを変えるカネをどうやって引っ張り出す。
COBOLが駄目だと言われるのは、COBOLを使える人が少ないにもかかわらず、ギャラが、安いからで
AIエンジニア並のギャラを用意すれば、みんな必死になってCOBOLを習得するだけです。
COBOLに対して廃止論を展開しているジャーナリストもいるけど、そこは違う
儲かれば人は来るのである。
プログラム言語の人気とは、どれだけ報酬があるか?
ということだと思っています。
人気について
プログラムの言語の人気は、おカネという話をしてきましたが、それは、取り扱うデータや環境が大きく変わってきただけです。
ネットが主流の最近では、以下の3つが、それぞれに適した環境そして言語が使われることが多くなっています。
- Webアプリケーション
- AI
- IoT
Webアプリケーション
PHPが、もともとの主役で、それが、Rubyになり、ScalaやPythonが増えてきただけで
今でもPHPやRubyは、多くのサービスで使われ続けています。
Webアプリケーション開発の場合、フレームワークという基盤やライブラリが重要で そこを利用するために最適なものが流行っているだけです。
※フレームワークとは?
アプリケーションソフトを開発する際によく必要をされる汎用的な機能をまとめて提供し、アプリケーションの土台として機能するソフトウェアのことです。
「Ruby on Rails(以下、Rails)」というフレームワークが、優秀で親和性が大きいRubyが使われています。
AIブームが起こるとデータサイエンスや機械学習のライブラリーが充実しているPythonが注目を集めただけで、多くのサービス、多くのサイトでは、PHPも使われていますし、Rubyも使われています。
-
Shimane in Ruby 島根県とRubyの関係について
以前、鳥取のシステムについてブログに書きましたが、 今回は、島根県のお話です。 2017/12/14 東京帝国ホテルで「Ruby biz Grand prix 2017」が開催されました。 Rubyと ...
-
存在価値は「楽しさ」にあり 島根県から世界に向けたメッセージ プログラム言語夜話 第9話 Ruby
楽しく暮らしていますか? 毎日、ラッシュの通勤電車で押されて、会社に行けば、面倒なことばかり。 おカネのために仕事しているけど、それっていいのかな? プログラムを組んでいいても苦痛に襲われたりイライラ ...
AI,IoTブーム
正直、プログラム言語の将来性などは、まったくわからない。
AIブームは、ブームで終わるかも知れない。
「AIを使えば、なんでも解決」
なんて世間は、思っているかもしれないけど、成果が出なくて中止になったものも多い。
これは、IoTに関しても同じことを意味します。
IT業界は、次々と新しい環境が登場しますが、実績があって信頼のあるテクノロジーは、長い間使われます。
適材適所
「ものには、それぞれ心地よい居場所があり、環境がある。」
一秒間に数千、数万のトランザクションを処理しようとしたらMySQLなどでは、信頼性という問題で心もとない。
そこで費用がかかってもOracleを選ぶでしょう。
金融系のシステムでOracleが使われている理由は、信頼性なのです。
一方、中小企業のデータ量の場合、Oracleは、オーバースペックでMySQLなどのオープン系データベースで十分に活用できます。
システムは、その規模や形態、業種によってプログラム言語、環境、データベースなどを選ぶわけです。
最近のプログラム言語は、言語単体ではなく、環境と深く結びついています。
そして、万能な言語などは、なく、適材適所で環境が選ばれているのです。
ですから
「米国電気電子技術者協会(IEEE)が公表しているプログラミング言語の人気ランキング」
なんて意味がないし、ただの人気投票ぐらい程度で良いと思います。
大事なのは、自分が参加しているプロジェクトでどれだけ多くのことを学ぶことができるかです。
今、経験していることは、無駄になることはありません。
ですから、Googleなどで検索してコードをコピーして使っても構わないですから、必ず内容を理解してください。
将来、きっと役に立つときが来ます。
エンジニアとして長く働くためのコツ
IT小僧は、ビルの1フロアーに設置された大型コンピューターやIBMのOS/2やAIX、Windows,Macintosh,UNIX,TANDEM、FAXのチップ開発、iPhone、Android その他多くの環境で仕事をしてきました。
COBOLだったり機械語だったりC,C++,Swift,Javaだったり、PHPだったりと多種多様な言語を使ってきました。
時代の流れだったり、おカネのためだったり様々です。
お陰でいろいろな視点でシステムを考えることができたので、今でも、社内SEとして、EXCELのマクロやVB、AccessやC#、JavaやSwiftなどでコードを書くs仕事が続いています。
正直、経験の蓄積による「おつり」で仕事をしています。
ですから、今からRailやScalaやPythonでシステムを組む必要があったらできると思っています。
ただ、そろそろ 引退かな・・・
IT小僧のように多くの環境を体験できたのは、運が良かったと思います。
でもそれは、積極的に動いてきたことも関係しているはずです。
エンジニアとして長く働くには、言語や環境にこだわり過ぎるのは、危険
Javaのスペシャリストと言っても、Javaが使われなくなったら、職を失うわけです。
そんな、スペシャリスト達を多く見てきました。
そしてエンジニアから離れた人をたくさんみてきました。
AIのブームもいつまで続くかわかりません。
思ったより効果がなければ、企業は、切り捨てます。
若い技術者には、多くの環境と言語に触れてほしいと願っています。
また、おっさんのエンジニアには、つねに挑戦する気持ちを持ってほしい。
経験に裏付けられた能力は、いろいろな場面で発揮することができます。
まとめ
以前、Javaについてブログにしたところ、多くのJavaプログラマーの人にお叱りをうけました。
「Javaは、終わらない」
と・・・ いや、終わらないかも知れないけどJavaの仕事は減るかも知れません。
Oracleが有料にしたことで企業はすでに別のものを探しています。
言いたかったことは
Javaを信奉して特化したエンジニアだと、Javaの仕事がなくなった時に職を失います。
現在、先カンブリア紀のように多種多様なプログラム言語や環境が増えています。
先カンブリア紀の特殊な環境に特化した生き物が絶滅してしまったように
今は、多くの需要があっても、何かがきっかけで、一気に消え去ってしまうかも知れません。
システムは、つねに適材適所なものが、要求されるため、流行り廃りで語られることは、意味がないのです。