Python:コミュニティが作成したプログラミング言語

これは、Pythonプログラミング言語の「寛大な生涯独裁者」であるGuido Van RossumによるオランダのTED Talksの講演の翻訳です。 多くの自伝とプログラミング言語の意味とPythonの基本的な考え方について少し。







自己紹介させてください-私はオタクです、オタクです。 そして、私は常に残ります。 私は26歳で大学を卒業し、結婚したときは45歳でしたが、現在は60歳で、14歳の息子がいます。 決断を下すのは難しいかもしれません。私はアメリカに20年以上住んでいますが、まだ居住許可を持っています。







私はスティーブ・ジョブズやマーク・ザッカーバーグではありません。 しかし、35歳のときに、フォロワーを見つけるプログラミング言語を作成しました。 その後に起こったことはすごい。 しかし、それについては後で。







10時、両親は私にPhilips Electronics Educational Kitを渡してくれました。 最初は、指示に従っただけで、すべてうまくいきました。 その後、自分の回路を作成しようと試みました。セットには3つのトランジスタがありました。







私は自分のモデルの1つである閃光を学校に持っていきました。 しかし、私の5年生では、誰も気にしませんでした。誰もこのデザインの重要性に気付きませんでした。 自分がオタクだと気付いたのはそれが初めてだったと思います。それ以前は、私はただ賢い静かな男でした。







高校では、私はますますオタクになりました-私はエレクトロニクスにも興味のある数人の子供たちと遊んだり、物理学のクラスでシェーファーストロークを議論したり、他の誰もがオームの法則を理解しました。







幸いなことに、私たちの物理の先生は私たちに気づき、重力の法則を他のクラスに説明するために使用するデジタルタイマーの作成に取りかかりました。 私たちのスキルが役立つことを示した素晴らしいプロジェクトでした。 残りの子供たちはまだ私たちが奇妙だと思っていました。70年代には、多くが「パイプ」の反逆者または喫煙者でした。 残りはすでに医師、弁護士、またはマネージャーとしてのキャリアの成功に備えていました。 しかし、彼らは私に触れませんでした、私も彼らに触れませんでした、そして結局、私は最高の学生の一人として卒業しました。







高校卒業後、私はアムステルダム大学に入学しました:自宅に近く、70年代にオランダで育った10代の若者にとって、アムステルダムは唯一のクールな都市でした(そう、1968年の学生の抗議は私を少し夢中にさせました)。 私の学校の物理学の先生の驚いたことに、数学を選びましたが、振り返ってみると、違いはないと思います。







科学ビルの地下にメインフレームがあり、一目でそれが大好きになりました。 カードパンチャー! ラインプリンター! バッチ処理! 私はすぐに、Algol、Fortran、Pascalなどの言語でプログラミングすることを学びました。 現在、これらの名前はほとんど忘れられていますが、当時は大きな影響力がありました。 すぐに、私は再び聴衆の終わりに座って、講義を無視し、私のコンピュータプログラムを修正しました。 なんで?







メインフレームの周りの地下室では、想像を絶する何かが起こっていました。 トリックと秘密を共有する同様の興味を持つ学生とスタッフの緊密なグループがありました。 手順とプログラムを共有しました。 メインフレームのサポートスタッフと協力しました。特に猫とマウスのゲームでは、空きディスク領域を確保しました(空きディスク領域は本当に神聖でした)。







しかし、私が学んだ主な教訓は知識の共有に関するものでした。私が当時学んだトリックのほとんどは大型コンピューターの時代とともに消滅しましたが、共有する必要があるソフトウェアのアイデアはこれまでと同じように生きています。 現在、私たちはそれを「オープンソース」と呼んでおり、これは全体的な動きです。 マークしてください!







メインフレームOSチームは、数人の学生を募集しました。 彼らは空席を置き、私は応答し、仕事を得た。 人生を変えるイベントでした! 突然、メインフレームに完全にアクセスできるようになりました(空きスペースや端末に対する戦争はありません)。また、オペレーティングシステムのソースにアクセスできるようになりました。







私には夢の仕事がありました。他のプログラマーや機械ユーザーなど、実際の顧客と一緒に一日中プログラムすることです。 私の研究は停滞し、私はほとんど大学を中退しましたが、私は私を拒否しなかったマネージャーと教授に引き抜かれました。 彼らは私にいくつかのコースを修了せざるを得ず、最終的には大きな遅れで卒業生になりました。







私はすぐに新しい夢の仕事に切り替えました。それは卒業証書なしで閉じられました。 プログラミング言語への興味を失ったことはありませんでした。学習のために、新しいプログラミング言語の開発チームに参加しました。これは毎日目にするものではありません。 デザイナーは、自分の言語が世界を引き継ぎ、Basicに取って代わることを望んでいました。







80があり、BASICはApple IIやCommodore 64のようなマイクロコンピューターで書く新世代のアマチュアプログラマーの選択でした。私たちのチームはBASICを害虫であると考えました。 私たちの新しい言語であるABCは、「基本を根絶する」ことになっており、それが私たちのモットーでした。







しかし、残念なことに、マーケティング(またはタイミング)により、すべてが私たちにとってあまり良いものではなく、4年後にABCは放棄されました。 それ以来、プロジェクトが失敗した理由を理解しようとして多くの時間を費やしましたが、適切なタイミングで適切な場所にいました。 言語が少し冗長であったことを除けば、その時点でインターネットがなかったという理由だけでABCが死んだという結論に達しました。 言語の作成者とユーザーの間でフィードバックはありませんでした。 ABCの設計は、最初は一方通行で高価でした。







5年後、自分のプログラミング言語のアイデアを求めてABCの名残を掘り下げたとき、フィードバックの欠如を排除することにしました。 私のモットーは、「早期にリリース、頻繁にリリース」(シカゴ民主党のように「早期に投票、頻繁に投票」)でした。 また、1990年の小規模で遅いインターネットにより、インターネットが可能になりました。







30年前を見ると、インターネットとオープンソース(別名フリーソフトウェア)は本当に大きく変わっています。 そしてもちろん、ムーアの法則は、どのコンピューターが年々高速化しているのかを示しています。 これにより、コンピューターソフトウェアの作成者とユーザー間の相互作用が変わりました。 これらのイベント(およびその使用方法)は、私の経験とプログラミングスキルよりも、「私の」プログラミング言語の成功に貢献したと考えています。







また、私がPython言語と呼んでも害はありませんでした-私の側では少し不本意なマーケティングの天才です。 コメディショーのモンティパイソンのフライングサーカスにちなんで命名しましたが、1990年には何の影響もありませんでした。 今日、多くのブランド調査会社が、そのような名前がクライアントの潜在意識にどのような複雑な関連を引き起こすかについて、大きな罰金を喜んで書くと確信しています。 しかし、私はただ軽薄でした。







さまざまなプログラミング言語のメリットに関する技術的なスピーチをあなたにロードしないことを約束しました。 しかし、私は、プログラミング言語がプログラマーにとって、それらを使用する人々にとって何を意味するかについていくつか述べたいと思います。 プログラミング言語とは何かを簡単な人に説明するようプログラマーに頼むと、彼はこれがコンピューターにあなたが必要とすることをさせる方法であると答えます。 しかし、もしそれだけなら、なぜプログラマーは互いに言語を熱心に議論しているのでしょうか?







実際には、プログラミング言語は、プログラマーがアイデアをどのように表現して共有するかを決定します。 理由:コンピューターは必要なものをすべて処理しますが、プログラマーは他のプログラマーと協力します。アイデアの伝達が不十分だと、高価な障害が発生する可能性があります。 実際、プログラミング言語で表現されたアイデアは、多くの場合、プログラムのエンドユーザーに届きます。







GoogleやFacebookのような企業の信じられないほどの成功を考えてください。 それらはアイデアの根底にあります-コンピュータが人々のために何ができるかについてのアイデア。 効果的にするには、プログラミング言語を使用してコンピュータープログラムでアイデアを表現する必要があります。 また、アイデアを最もよく表現できる言語は、チームメンバー、つまり人々に与えられるため、チームに大きな利点をもたらします。 -アイデアの明快さ。 GoogleとFacebookの腸内のアイデアは可能な限り異なり、実際、これらの企業が選択したプログラミング言語は、プログラミング言語の設計言語の範囲の両端にあります。







実話:Googleの最初のバージョンはPythonで作成されました。 理由:Pythonは、Webのインデックス作成と検索結果の整理に関するLarry PageとSergey Brinの元のアイデアを表現するのに適した言語でした。 そして彼らは自分のアイデアをコンピューターで実現することができました!







したがって、1990年に、GoogleとFacebookのずっと前に、私は独自のプログラミング言語を作成し、それをPythonと呼びました。 しかし、彼の考えは何ですか? なぜ彼はとても成功したのですか? 他のプログラミング言語とどう違うのですか? (なぜあなたは私をそんなに見ているのですか?:-)







私には多くの答えがあります。技術的なものもあれば、長年の経験とスキルの一部もあります。「適切なタイミングで適切な場所にいた」などです。 しかし、主なアイデアは、言語がインターネット上で、最初は公然と、ボランティアのコミュニティ(しかし恋人ではない!)によって開発されたということだと思います。







そして、これはまさに科学ビルの地下の部分で以前に議論されたものです。







驚き:良い動機付けのスピーチと同様に、このレポートの目的は喜びです!







コミュニティの一員になったとき、私はとても幸せです。 私は毎日の仕事でこれを感じることができて幸運です(私はDropboxのリードエンジニアです)。 そして、もし私がこの感情を感じることができないなら、私は生きていると感じるのをやめるでしょう。 この感覚は伝染性であり、したがって世界中に私たちのコミュニティのメンバーがいます。







Pythonユーザーコミュニティは、それを意図的に使用している何百万人もの人々であり、彼らはそれを気に入っています。 多くは、ナミビア、イラク、さらにはオハイオなどの遠隔地での会議の開催-PyCon-に積極的に関与しています!







私のお気に入りの話:1年前、私は20分間、ビデオ会議でイラクのバビロン大学の教職員でいっぱいのクラスとPythonの質問に答えて過ごしました。 戦争で荒廃した国でもこのようなイベントを企画した勇敢な女性の努力のおかげで、バビロン大学の学生は現在、Pythonプログラミングの紹介を研究しています。 私の最大の夢の中で、私は自分の人生とそれほど遠く離れた人生に影響を与えるとは思っていませんでした。







このメモでは、コミュニティから作成されたプログラミング言語がユーザーの幸福に貢献しています。 来年はキューバのPyConに行くかもしれません!








All Articles