未来のいつか/hyoshiokの日記

hyoshiokの日々思うことをあれやこれや

Ruby25周年イベントで変わったこと変わらなかったことを考えた #ruby25th

品川で開催されたRuby 25周年のイベントに行ってきた。*1

http://25.ruby.or.jp

高橋さんのRubyの昔の話から、まつもとさんの未来の話、宮川さんとまつもとさん対談など、コンテンツも盛りだくさんだった。最後にお嬢さん二人からまつもとさんへの花束贈呈があって、家族ぐるみの暖かいイベントになった。スポンサー企業もいっぱい集まって盛況だった。

まつもとさんのお話を聞きながら、この20年前後のICT業界の変わったこと変わらなかったことをつらつらと考えた。

昨今、技術の変化が過度に強調されシンギュラリティに象徴される様々なバズワードが飛び交っている。若い人は(おじさんもそうだけど)、メディアの狂想に踊らされているのではないかと思わなくもない。確かに技術が指数関数的に変化するとしたら、今後N年の変化は、過去の変化の総和と等しいくらいに変化する。ムーアの法則(2年で半導体集積度が倍になる)風な変化だと、今後2年の集積度は、今までの集積度の総和と等しいとか、テンプレート的に現在の職業の半分は今後10年で登場する職業に置き換えられるとか真偽はともかく言えなくもない。

過去のICT技術の変化は主に量的な変化が質的な変化になったものと言える。量的な変化以外に何か質的な変化がどれだけあったのか。

コンピュータは基本的にはノイマン型だし、もっと言えば単なるチューリングマシンだ。それを操るプログラミング言語の進化は基本的にはシンタックス上の変化に過ぎない。より少ない表現量でより多くの処理をこなす。手続き型言語からオブジェクト指向型言語、あるいは関数型言語など様々な言語パラダイムがあったとしても所詮はチューリングマシンをどう駆動するかというところに帰着する。

プログラミング言語を動かす環境もUnix系の処理系にほぼ収斂したし20年前と、コスト、規模などスケール要因以外は、驚くほど変わっていない。*2

一方で変化した部分に目を向けるとどうなるか。

ソフトウェア開発手法に関してはアジャイル型の手法が広く知られるようになった。オープンソースも一般的になって、バザール型開発も一般的になった。銀の弾丸があったのかなかったのか、よく分からないが、プログラマ復権があって、好きなプログラミングをしていて飯を食えるという職業ハッカーが多くはないけど現れてきたのが、この20年の変化かなと思う。まつもとさんは職業ハッカーのロックスターだ。*3

インターネットが普及して不可逆的な変化を社会に与え、それを前提としたソフトウェア開発手法(オープンソースソフトウェアにおけるバザール型開発)から職業ハッカーの勃興がこの20年の大きな変化といえる。

クラウドやモバイル、IoT、AI、機械学習ブロックチェーンなどなど流行り言葉は多いし、これからもいっぱい出てくると思う。10年に一度くらいのパラダイムシフトもあると思う。*4

温故知新でこれからの社会を考えてみたい。25年後は一体どんな世界になっているのだろうか。ちょっとワクワクする。*5

*1:20周年イベントは楽天タワー2号館で開催した

*2:分散処理がより大規模になってきたということはあるにしても、計算モデルは逐次処理の拡張として捉えられている

*3:90年代後半のネット環境はPerl全盛で、その後Railsが現れてRubyがメジャーになって、機械学習の時代にPythonが流行ってきている

*4:量子コンピュータなどまったく違うものも出てくるかもしれないが、未来はよく見えない。

*5:古典をいっぱい読みたいなあ。未来を考えるためには歴史からいかに学ぶか、そのスキルを身につけたい