Pocket

現代社会におけるネット使用率の高さは、1980年代の終わりから1990年代の初めにかけて、その萌芽を確認できる。パーソナルコンピューターとインターネットの組み合わせは、我々人類に空前絶後の爆発的変化をもたらした。情報を伝達し、友人・知人と即時に連絡を取り合う技術が飛躍的に向上したのだ。

一般の人々にとって、これはまさに魔法のようだと感じられるだろう。しかし、プログラム言語を駆使してコンピューターやらサーバーやらウェブやらその他諸々のサービスを操作し、これらのシステムを実際に作りあげた人たちにとっては、想定通りの挙動なのである。

これらプログラム言語のほとんどはオープンなものだ。つまり、誰でも使用でき、独自の機能を追加できる。しかしこの20年間でコンピューターが目覚しい進化を遂げたのと同様、コンピューターを動かすために開発者が使うプログラム言語も大きく前進した。変わらないものは何一つ無く、全てが進化し続けているのである。

一つ例を挙げてみよう。皆さんは、1993年に最も普及率の高かったオープンソース・プログラム言語の一つがEmacs Lispだということをご存知だろうか?Emacsなんて見たことも聞いたこともないという方のために説明しておこう。Emacsというのは、フリー・ソフトウェア界の大御所リチャード・ストールマンによって製作され、Linux開発者たちの間で広く使われているテキスト・エディターだ。その拡張性の高さゆえに、多くのプログラマーがEmacsを使ってコードを書いている。というのも、Linuxには本格的な統合開発環境(IDE)があまり充実していない上に、存在する数少ないIDEもあまり使われない傾向にあるからだ。Emacs Lispは、それより古いLispプログラミング言語から派生したものである。

1993年に最も普及していたオープンソース・コードはC言語であり、第一四半期には51%のシェアを誇った。同年、Linux開発者向けのMake(ソースコードから自動的に実行ファイルとライブラリをビルドするユーティリティ)は、たった6%の開発者にしか使用されていなかった。

2013年の第一四半期には、Javaが12%のシェアを獲得して最も普及しているオープンソース・コードの座に輝いた。それに次ぐC++のシェアは11%、HTMLは10%だった。

これらのオープンソース・プログラム言語はその全てが、次世代の言語に影響を与える可能性がある。例えばC言語は、C++やPython、Javascript、Perl等のプログラム言語の進化に影響を与えた。JavaはC#の基盤形成に寄与したし、Python無しにRubyは生まれなかっただろう。

これからも進化は続くに違いない。1993年にはオープンソースプログラム言語は40程度しか存在しなかった。2013年現在では100近いプログラム言語があり、毎日新しいアイデアが生み出されている。

モバイルクラウドサービス会社のKinveyが過去20年間のオープンソース・コードを図表化したインフォグラフィックを見れば、その変化は一目瞭然だ。(インフォグラフィックで使用したデータは、Ohloh.netBlack Duck Softwareがプールしたもの。)

Kinveyの注釈:

下に示すグラフは、1993年から今日にかけて、上位16のプログラミング言語が四半期毎にどれほどのシェア率を獲得したかを視覚化したものだ。このグラフに現れた、山と谷が作り出す驚異的な模様を興味深いと思っていただければ幸いである。このグラフは、プログラミング界の激動を如実に表している。その他にもいくつか面白いデータをグラフ化しておいた。(左から、各年のプログラム言語の総数、各コミットにかかったコード行数の平均、他のプログラム言語の発展に影響を与えたプログラム言語)

open_source_code_history_kinvey_800

※トップ画像は、オープンソース・ソフトドリンクのオープンコーラ(画像提供:Wikipedia Commons)

Pocket