Check our Terms and Privacy Policy.

理論を体験・理解するための児童から大人向けプログラム講習の実施

プログラミングには、事前に問題の充分な分析が必要です。 このプロジェクトが成立した際に実施する講習と作成する教材では、プログラミングにおいて必要な「分析」、「手順・アルゴリズム」、「制御」、「データ構造」という考えかたの習得を目指します。そして、山梨県大月市をICTの街へと成長させたいと思います。

現在の支援総額

0

0%

目標金額は2,900,000円

支援者数

0

募集終了まで残り

終了

このプロジェクトは、2018/11/28に募集を開始し、 2019/01/31に募集を終了しました

このプロジェクトを見た人はこちらもチェックしています

理論を体験・理解するための児童から大人向けプログラム講習の実施

現在の支援総額

0

0%達成

終了

目標金額2,900,000

支援者数0

このプロジェクトは、2018/11/28に募集を開始し、 2019/01/31に募集を終了しました

プログラミングには、事前に問題の充分な分析が必要です。 このプロジェクトが成立した際に実施する講習と作成する教材では、プログラミングにおいて必要な「分析」、「手順・アルゴリズム」、「制御」、「データ構造」という考えかたの習得を目指します。そして、山梨県大月市をICTの街へと成長させたいと思います。

このプロジェクトを見た人はこちらもチェックしています

2018/12/21 18:24

lisp系とforth系にかならずしも限った話ではないのですが。lisp系とforth系が強く持つ特徴があります。それは自己増殖型言語であるという点です。Javascriptもその一種ではあります。

これは、「ライブラリを書き溜めていく」というのとはまったく異なります。絶対とは言えませんが、多くの言語では言語そのものを別の言語にしてしまうようなことはできません。たとえば、"if" 文や "ループ" などの制御構造を新たに定義することはできません。(頑張ればどうにでもなりますが、コンパイラのソースやAPIを理解していないといけないなどの厳しめの条件がつきます。)

その点、lisp系やforth系は、その言語仕様のままで新しい制御構造(あるいは制御構文)すら定義できます。lisp系やforth系が言語定義言語、あるいはメタ言語とも呼ばれる理由です (言語定義言語やメタ言語というのは耳慣れないかもしれませんが、コンパイラ・コンパイラ、あるいはメタ・コンパイラにすこしだけ似ているかもしれません)。

そのような言語を用いる利点はなんでしょうか? たとえばそのような言語を10年間使い続けたとしましょう。その時間を活かした結果として、それぞれの児童・生徒の手元にはなにが残るでしょうか? おそらくは元の言語とはまったく異なる、各々の児童・生徒独自の言語でしょう。そして、どう考えれば、あるいはなにを考えればそれらができるかという知識と経験も残るはずです。

この点において、こうも言えるかもしれません。「わかり易さとはわかり難いこと」だと。lisp系やforth系の言語は様々な機能が隠された言語あるいは環境に比べてわかり難いかもしれません。ですが、Scratchなどは見かけのわかり易さであり、lisp系やforth系言語は見かけのわかり難さです。「見かけこそが重要」という考え方もあるかもしれません。ですが見かけを超えれば、前者はわかり難く、後者はわかり易いのです。どちらを選ぶのがいいかは自明とも言えるでしょう。

非常に多くのプログラミング言語が存在します。それらを一つ一つ検証し、どれを使っていくのがいいのかを選ぶのは大変な作業です。教員の方とそのあたりを話したこともありますが、「正直手に負えない」という感想をいただきました。そして、「だから文科省や教科書会社の推奨する言語を使う」とも。それでいいのだろうかとも思います。「プログラムを組むことができる」とはっきり言える人は、10個や20個のプログラミング言語は使えるでしょう。その全部を資料なしにというわけではないでしょうが。ならば、代表的と言えるような5,6個の言語すら検討できないというのは、好奇心の欠如か、能力の不足であるように思えます。教員の仕事が忙しいのはわかります。ですが、「だとしても」です。

そして、手に負えないのであれば、児童・生徒の血肉になる言語を選ぶのが現実的には最善の方法であるように思えます。

大学のプログラミング教育に用いる言語の選定においても、「社会に出た時に役に立つ言語を」と主張される方がいます。大学でのプログラミング教育はなんのためのものでしょうか? そこで「社会に出た時に役に立つ言語を」という基準は、本末転倒ですらあるでしょう。もちろん、そのあたりが合致している言語もありますが。

プログラミング教育は、それがどういう形態で行われるにしても、なんのためのものなのかという根本について考えてみる必要があるかと思います。そして、本プロジェクト、本企画、本企画の母体となる講習会では、「プログラミング言語は必ずしも使う必要はない」という結論から出発しています。

このような方法、あるは本プロジェクト、本企画、本企画の母体となる講習会が持っている知識・知見・経験に興味を持たれた方がおられましたら、ぜひご支援をいただければと思います。

シェアしてプロジェクトをもっと応援!