エンタープライズ用にも使われ始めたPython

先週、PyCON 2005カンファレンスがワシントンD.C.で開催された。オープンソース技術Pythonは企業におけるITの現場に浸透し始めており、当分の間は拡大を続けるだろう。これがその結論である。

企業の基幹部分を担う開発部門にとって、重要なプロジェクトにも安心して使える言語はわずかしかない。C#とJavaとXMLとSQL、他にもう1〜2の言語だけというのが一般的だ。この点で言えば、従来、Pythonは「テスト」もしくは「オモチャ」用の言語として一括りにされてきた。しかし、今回のカンファレンスの講演は、しばしば、そうした評価を覆すものだった。

そうした講演の中で最も象徴的なのは、カンファレンスの冒頭に置かれたMicrosoft Common Language Runtimeチームの技術者Jim Huguninによる基調講演だろう。講演では、Pythonの.NET完全対応版リリース0.7が発表されただけでなく、Pythonに関するMicrosoftのビジョンも明らかにされた。それによると、基本的に、IronPythonプロジェクトが完了すれば、Pythonは.NET開発で一般に使われているC#などの言語を補足し生産性を高めるために使われるだろうとMicrosoftは見ているという。実際、各種の講演では、一般的な言語に比べてPythonを使えばコーディング時間が半減することを示す実験や事例が紹介されていた。

Microsoftは、開発者にPythonを含むパッケージを提供したいと考えているようだ。.NETインフラストラクチャを補強し、しかも従来のライブラリやデバッグ・ツールが使えるものが欲しい。そこで目を付けたのが、使いやすく保守もしやすく、手早くプログラミングができる言語だったのだ。

もちろん、Microsoftには何の保証もない。原理的には、Microsoftの意思決定が、Pythonの.NETの世界への浸透を大きく停滞させたり阻害したりする可能性もある。しかし、一旦Pythonを戦略的に選んだ以上、それを変えることはできない。

  • Googleの技術責任者Greg Steinは、カンファレンスの最終日に行われた基調講演で、PythonがGoogleのさまざまな情報処理に広く利用されていることを紹介した。Microsoftと同規模のIT企業は少ないが、Googleはその一つである。

  • GIS(地理情報システム)の大手ESRIは、今年初めてPyConに参加した。その製品ArcGISには100万を超えるユーザーがいる。その区切りとなるバージョン9.0では、今、Pythonがカスタマイズおよび自動処理のための拡張言語として推奨されている。

  • Nokiaは、Series 60を搭載した携帯電話機のための高生産性開発言語としてPythonをサポートしている。

その他、カンファレンスの会場では、Pythonが実用に広がっている様子が、そこかしこに窺えた。プロジェクトのROIを測定した話があり、ベンチャー投資家と人材会社はビジネスのネタを探し、旅費の削減やスポンサーの気まぐれにもかかわらず来年のカンファレンスの盛況を確信する声が聞かれた。

とはいえ、Pythonには問題点もある。パフォーマンスはCに匹敵するか、それを上回ることさえあるが、ときとして十分なパフォーマンスが出ないことがある。ソフトウェア特許などの知的財産権問題に悩まされる。Pythonの生みの親Guido van Rossumはバージョン間の互換性を重視して言語とライブラリの定義を変えたがらない。その一方で、オープンソースの手順は、JavaやC++の標準化手続きに比べると変則的である。Pythonの開発コミュニティは盛況だが、それが新人を遠ざける原因にもなっている。PythonベースのWebおよびGUIフレームワークは数種があればニーズのほとんどに対応できるのに、数十も乱立していると嘆く声が聞こえる。IDE(Integrated development environment)も洗練されたものがなく、乱立状態だ。

しかし、概して言えば、教室で教えられ世界中の大きな組織で予算が認められて使われる「安心な選択肢」に、Pythonは近づいているように見える。そして、実力ある支持者を引きつけているようだ。今、時代はあらゆるプラットフォーム上で他の技術との「相性の良さ」を特長とする言語を招いているように思われる。

Cameron Lairdは、Phaseit, Inc.の常勤ソフトウェア開発者。IT関連についての記事を多く寄稿している。過去10年間に上梓した出版物のほとんどはプログラマ向けの解説書で、新しい言語やネットワーク技術やセキュリティなどに関するものである。また、技術報告書を執筆したり、PerlやPythonやTclなどのスクリプト言語に関する講義もしている。

原文