Qiitaでの情報発信の目的・内容
- 自然言語とプログラミング言語の性質の違いについて述べたサイトはいくつか見つかります。例えばプログラミング言語の文法は厳格だが、自然言語は文法を間違えても通じてしまう、などです。
- が、言語獲得の過程、言語教育のありかたに関して、自然言語とプログラミング言語の違いについて述べた情報はほとんど見つからないです。
- ここでは、自分が初めてプログラミング言語に触れたときにどのような思考過程を経てできるようになっていったか、とか、自分ならプログラミング初心者にどう教えるか、などについて、自然言語との違いを踏まえつつ、普段考えていることをアウトプットしていきたいと思います。
テンソル(私)の自己紹介
- 大手塾で、個別指導でプログラミングを教えています。(一般的な学校科目も教えています。)
- IT業界経験は15年。つい最近引退し、教育事業や文筆の仕事にシフトしつつあります。
- 最初にまともに使えるようになった言語はPerlですが、今や非メジャーな言語となってしまいましたね。Perlは大学院生のときに触りはじめ、就職後も使いました(就職当時はメジャーだったのです)。仕事では他に、PHP, HTML/CSS, JavaScript, ruby, python, シェルスクリプト, SQL, Visual Basic, Excel VBAなどを経験。引退前の直近ではNoCodeツールであるMicrosoft Power Platformの経験も。
- Scratch, C++, Java, C# について、直接の開発経験はありませんが、指導実績があります。上述の経験言語の中で指導実績がある言語は、HTML/CSS, JavaScript, python。
- 1990年代後半、大学の学部生でした。言語学を専攻。当時から語学学習がたいして苦にならず、かじってみた言語の数はたぶん今まで15~20か国語ぐらいです。英語以外の自然言語でいちばんまともに使えるのは中国語で、英語教育相当で高3~大1ぐらい。
- 2000年代の前半は大学院生でした。自然言語処理と音声認識/音声合成処理を主に研究している研究室に所属していました。現在のAI技術の源流が当時にあります。つまり、当時さかんに研究されていた機械翻訳や音声認識の技術が、成熟して一般の人の目に見られるようになりました。機械学習・データサイエンス・人工知能関連についても、(就職後に不勉強になったので勘をとり戻して)教える側にまわりたいです。