Watch

コーディングを学ぶ?いいえ:本物の言語を学びましょう

コーディングを学ぶ?いいえ:本物の言語を学びましょう

フランク・カタラーノ

コード

「コーディングを学ぶ」運動は、意図せぬ結果の法則に抵触する可能性がある。

子供の頃にコンピュータ言語を学ぶことにメリットがないと主張する人はほとんどいないでしょう(特にオタクの私)。プログラミング言語を習得することでコンピュータサイエンスの基礎を習得することは、大きな問題を扱いやすい構成要素に分解する方法を理解し、原因と結果の実験を行い、細部への注意の重要性を発見する素晴らしい方法です。(そうです、子供たち、大文字の使い方は、英語の課題以外でも重要です。)

さらに、シリコンの知識人になることで、キャリアはもちろんのこと、数学や科学への新たな窓が開かれる可能性もあります。

これは非人間の言語だ
これは非人間の言語だ

しかし、たとえコンピュータ言語が炭素系生命体である私たちにとって馴染みのない言語だとしても、人間の言語と同等というわけではありません。そして、現在議論されているいくつかの法案を見ても、必ずしもそのことがわかるとは限りません。

  • ニューメキシコ州では、州上院議員が、JavaScriptやHTMLなどのコンピュータープログラミングを「英語以外の言語」の卒業要件に含めようと推進している。
  • ケンタッキー州は、法案の提案者が「柔軟性」と呼ぶものの名の下に、外国語の2単位の必修化に関する同様の法案を検討しており、1月下旬に同州上院教育委員会を通過した。
  • 米国下院では、学齢期のプログラミング教育を促進する法案が提出されました。その16進法のタイトルは「416d65726963612043616e20436f646520 Act of 2013」と、実に魅力的な名前が付けられています。この法案の起草者であるカリフォルニア州選出のトニー・カルデナス下院議員は、この法案はコンピューター言語を「重要外国語」に指定するものだと述べています。

これは非常にオタク的なプロテクノロジーであると同時に、非常に間違っています。

1963年版、今でも役に立つ
1963年版、今でも役に立つ

確かに、コンピュータプログラミングは「外国語」を学ぶようなものです。つまり、母国語で指示を出す方法と、デジタルの受信者が高度に構造化された語彙と構文で伝えようとしていることをどのように認識するかをマッピングしようとするのです。これは論理的思考力を磨き、タスクを達成し、アプリの開発や仕事の追求で少し(あるいはそれ以上)のお金を稼ぐことにも役立ちます。

しかし、語彙と構文は、コンピュータ言語と人間の言語の類似点がほぼそこで終わるという点です。それは、何かとコミュニケーションをとるのか、誰かとコミュニケーションをとるのかの違いです。

人間の言語は、他の肉人形の行動を説明するためだけのものではない。言語学習者とは異なる文化的または歴史的根拠を持つ可能性のある物理的物体、感情、概念を説明するさまざまな方法を理解するための入り口でもあり、新たな視点とさらなる教育への道を提供する。

ドイツ語の無限に続く複合名詞に魅了されたこと、そしてスペイン語やドイツ語の慣用句をネイティブスピーカーに完璧に理解できるような翻訳を、近似値でしかできない自分の無力さを、私は決して忘れないでしょう。(これがどれほど難しいか、証明が必要ですか? 1980年代のビデオカセットレコーダーの取扱説明書を読んでみてください。あるいは、今すぐGoogle翻訳を使ってみてください。)

1971年版、あまり役に立たない
1971年版、あまり役に立たない

正直に言うと、オタク文化には魅力的な点がたくさんあるとはいえ、ロシア、中国、ギリシャほど豊かで古い文化があるとは思えません。独自の言語を持つクリンゴン語は例外かもしれませんが、それは非人間語です。

長期的には、別の人間の言語を学ぶことは、特定のコンピュータ言語を学ぶのと同じくらい経済的に有益であると私は考えています。精神的な柔軟性と創造的思考力の向上を促すだけでなく、企業が国際的な姿勢を強めていることや、米国における人口動態の変化に伴い英語を母国語としない人が増えていることから、バイリンガルであることは雇用主から求められています。

最後に、寿命の問題があります。子供の頃に学んだドイツ語とスペイン語は今でも通用し、少し触れ直すだけで、私が学んだ当時の形で役立ちます。中学校で学んだFORTRAN IVについては同じことが言えません。とはいえ、少し促されれば、ホレリス文を使って個々のアスタリスクからUSSエンタープライズ号のような意地悪な文字を作ることはできるかもしれません。

Code.org のような善意のコード推進者の多くが、特に 2 月 15 日の CodeDay を前にして、このような事態を予想したり、望んだりしていたとは思えません。ワシントン州は、他のいくつかの州と共に、コンピューター サイエンスのコースを科学または数学の卒業要件としてカウントするという、より論理的な道を歩んでいます。コンピューター プログラミングを理解することは、言語よりも STEM に近いのです。

より良いアプローチとは?両方を奨励することです。プログラミング言語を学ぶことで、生徒が後に他の人間の言語を学ぶきっかけとなるかもしれませんし、その逆もあります。それぞれを、他の言語への入り口として活用しましょう。つまり、コンピュータ言語は意味のある抽象化を教え、人間の言語は深いコミュニケーションを教えます。

ディストピア社会におけるリスクは、私たちが機械とのコミュニケーション方法を学び、互いにコミュニケーションする方法を忘れてしまうことです。ただリスクヘッジをしているだけなら話は別ですが。スカイネットさん、そうですよね?