By Mike McCune

「100ドルをもらうか?コードを教わるか?」と尋ねられたホームレスがアプリ開発に成功してApp StoreGoogle Playで販売していたり、プログラミングなどのコンピューターサイエンスが高校の必修科目に取り入れられているなど、現代の社会ではプログラミング能力が高く評価される傾向にあります。

そんななか、全米でコンピューターサイエンスのコースを持つ大学のトップ39校を調査したところ、スクリプト言語のPython(パイソン)が初心者にプログラミングを教育する教材として最もカリキュラムに取り入れられていることが判明しました。

Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities | blog@CACM | Communications of the ACM

http://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-us-universities/fulltext

この調査を行ったのは、無料のオンラインPython教材「Online Python Tutor」を作成したPhilip Guoさん。ここ数年のPython人気の増加に加え、自身のサイトへのアクセスがここ4年間で明確な増加傾向を示していたとのこと。



Pythonはそれ以外にも人気の広がりを見せています。マサチューセッツ工科大学(MIT)やカリフォルニア大学バークレー校のような最高クラスのコンピューターサイエンスを教える大学では入門コースの教材としてPythonを用いるようになったり、インターネットを使って無料で講義を受けることができるMOOC(Massive open online course:ムーク)の3大提供者(edXCourseraUdacity)はいずれもPythonのコースを完備しているという状況です。

このような状況を受け、Guoさんは初期プログラミング教育で用いられる言語の実態を調査することに。Guoさんはその理由を「最初にどの言語を学ばせるかという選択は、各学部の教育哲学が現れる部分であり、学生がコンピューターサイエンスに抱く第一印象に大きく影響を与えるのです」と語ります。これら全米で最高クラスの現場学部における実態は、今後のトレンドを見極める際の重要な指針として捉えられています。

調査はUSニューズ&ワールド・レポート誌が選んだ全米で最も優れたコンピューターサイエンス教育を行っている大学ランキングで上位39校のデータを集めて検証したもの。その結果は以下のグラフで表されています。実際には複数のコースを提供しているために合計数は39校を大きく上回ります。



調査を実施した39校のうち、69%にあたる27校がPythonを選択し、さらにトップ10校に限定するとなんと8校がPythonの教育を行っているという実態が明らかになっています。2位となったJavaは、過去10年間にわたってトップランナーの地位を保ってきましたが、現在ではPythonがそれを上回る状況になっているのも興味深いポイントです。とはいえ、PythonがJavaに取って代わるというわけではなく、初級コースではPythonを教え、次のステップでJavaに移行するというハイブリッド体制を取っている学部も存在しているとのこと。

トップ2に続くMATLAB(マトラブ)は主に科学者やエンジニアの卵にプログラミングを教える言語となっています。

そして、かつては全盛を誇っていたC++(シープラスプラス)はトップ2に大きく水をあけられて4位へ。5位にはC言語が入っていますが、これはもはや単独で教えているものではなく、他の言語との相関としてカリキュラムに取り入れているものとなっているとのこと。

続くSchemeは、プログラミング教育で用いられることも多い言語ですが、今回調査した39校の中ではわずか4校のみが採用しているという状況に。同数の4校となっていたインタラクティブ性の高いプログラミング言語であるScratchは、主に幼稚園から高校生までの年齢層を対象にした言語であるために、アカデミーレベルでの教育ではあまり広がりを見せていないと考えられます。



2014年時点では、Pythonが1つの勢力となりつつあることを如実に示している結果が明らかにされる調査となっていましたが、これが5年後、10年後にはどのように変化するのか、興味深いところです。