普及しているプログラミング言語はGoogle言語だけとなった世界
おそらく皆が同意すると思うが2010年から2018年までの間はスマホ業界はApple一強の時代であると言い切れる。
5年前なら20代後半がiOSアプリを開発するだけでも圧倒的な有利を取れていた。だがここ2~3年で10代~20代前半の子らがこの市場に参入し始めてきた。少なくともiOS/Androidアプリ開発で20代前半のエンジニアは1人は必ずいる。それだけ若い人がiOSアプリ開発がそれなりのステータスになることを認知し始めたのだ。5年前はそもそもプログラマ業界は3Kとして学生に不人気だったのに世の中変わったものである。
だいぶ話が脱線したがこれだけiOS(というかiPhone)が人気になってくるとGoogleとしてはちょっと面白くないはずである。そんなGoogleは次の5年を圧勝するために今この時間とお金を投資しまくっているのではないかな。だからこれから来る2020年の代はもしかするとGoogleが開発するプラットフォームでソフトウェアを開発しているかもしれない。
僕は去年の夏頃からブロックチェーンのリサーチのためにブロックチェーン業界のコミュニティに入って内部調査をしていたが、その時に初めてGoogle製のサーバーサイド言語のGoとiOS/Androidのマルチプラットフォーム開発のFlutterの存在を知った。
Flutterに関してはReact Nativeの2番線じ感を最初は感じていた。だがGoの方をリサーチしてみるとこれがどうもプログラマ業界に人気らしかった。フリーランス案件で単価の高い案件にGo言語が入った事もそれを物語っていた。
僕の中ではすでにGoはプログラミング言語のトレンドとしては成功していると思っている。GoはGoogle製のサーバーサイド言語である。そしてまたFireBaseの存在もある。これもまたGoogle製のMBaasだ。アクセス解析ツールであるGoogle Analyticsはもちろんgoogle製。
あれ、Google製のモノ増えて来てない?と思うと最近のgoogleは結構伸びて来ている感がある。
そのため私は密かに高確率でGoogle製のプラットフォームであるFlutterが今後5年の未来を勝利を獲得するのかもと予想するようになった。
さらにAndroidの開発用プログラミング言語であるJavaはオラクルに裁判で負けてしまったため新OSを開発せざるを得ない状況もありますからね。
ASCII.jp:Google-Oracle訴訟はOracleに有利な判断 判決からAndroid登場時の裏が見えてくる (1/2)|末岡洋子の海外モバイルビジネス最新情勢
これでもうGoogleは次の5年のスマホ業界でAppleに逆転するために本気になると思う。これまでの5年間はずっとAppleに負け続けて来たから。
任天堂が昔長期間ソニーに負け続けて最近復活して来たようにGoogleは次の5年間をAppleに勝つ施策を出して来るはずである。
逆にまあAppleはジョブズの財産を消化しきったのでこれから先はゆっくり劣化していくと予想する。
iOSアプリエンジニアもAndroidアプリエンジニアも同じコードをメンテする
本当は日本のキャリア(ソフトバンク・ドコモ、AU)みたいに競合相手が複数になる世界が面白いんだけど、GoogleのプラットフォームがAppleに勝利したら今後のスマホアプリの業界はiOSエンジニアもAndroidエンジニアも同じコードをメンテナンスする未来が見えて来たかもと思っている。
このあたりを見るとGoogleの本気度が伺える。
Googleが新OSを開発している辺りAndroidのプラットフォームを無くしそうである。
2010年はiOSによってFlashのプラットフォームが衰退した時のようにこれから先はAndroidのプラットフォームが衰退するのかもしれない。
同僚のAndroidエンジニアはこの点に関しては悲観的である。
今僕はAndroidの開発や勉強もやっているが、Androiderからは「Androidは今後廃れるからやる必要ないと思うよ」という忠告を何度も頂きます。
こう考えるとやはり十何年前にAppleのジョブズが
- iOSの開発にObjective-Cを選定したこと
- その後に独自のプログラミング言語Swiftを開発するプロジェクトを進めたこと
は本当に凄い事だと思う。実際の技術選定はウォズの方だと思うけど、ジョブズは将来流行る技術の目利きが出来るからそれにOKを出したのはやっぱり凄い。
それに比べてMicroSoftと来たら
Dartは未来の言語となり得るか
Dartに関してはどうだろうか。
この世界、プログラミング言語の仕様がいいからと行って技術が流行るとは限らないのが技術選定の難しいところである。
なんせiOSで懲りたけどObjective-Cは文法構文上みんなに嫌われてたしなかなか難しかったけどiOSの普及で一気に流行った言語なので。
特にブラウザ言語であるJavaScriptに関しては昔はクソ言語の一つだし言語仕様も複雑怪奇だけど使われているプログラミング言語ランキングナンバーワンという地位を獲得しているのである。
もちろん僕はあまりJavaScriptは触りたくないし書きたくない。変数のスコープとか鬼畜すぎて共同開発に向いてないんじゃないかってくらいよくわからない言語である。
それに比べたらDartはまだ良心的な言語仕様だと思う。JavaとJavaScriptを足して2で割ったような言語仕様らしいけど。
なんか、今後Dartが流行った暁にはJavaとJavaScriptの違いのネタにDartで例えられそうな感があるね。