アカウント名:
パスワード:
論理的思考を養うという意味で、コーディング授業も悪くない。
でも、何を教えるのかが聞きたい。いきなりjavaやVBでforループで1から100まで表示させることに意味があるとは思えない。教えるとすればそこに至る設計。机上でフローチャートでも書かせてみればいい。教材としてフローチャートを設定すれば実行して結果が出るようなツールがあると良い。
教えたいのが「現場で使えるコーディング能力」だけなら、そんな義務教育はいらないの方に同意する。
その授業の結果として、Hello Worldしか動かせなかった、ってレベルだったとしても、彼らが現在使っている、そして、今後も使い続けていくだろう様々なコンピュータ機器は、何か魔法的なよくわからない力で動いているわけじゃなくて、誰かが書いたプログラムの通りに動いているだけなんだ。ということが学べたならそれはそれで有用なんじゃないですかね?
いや、どんな言語でも「Hello, World」レベルだとすると『大師父の言ったとおりの呪文を唱えた!』でしかないだろ。それは魔法と同じだ。
確かに#include っておまじないを教わるしなぁ。
仰るとおり論理的思考を養うにもいいですし、「やりたいことを手続きで表現する力」を養うにもいいですよね。皆にそれがあればいいのに・・・。それがない人が(少なくとも)事務部門に多いせいで、苦労してます。毎期、事務部門からやってくる「~調査の依頼」ってやつの説明文が、記入例の列記になってるんですよね。そのせいで、例から外れたものは事務部門に問い合わせないといけない。残念なことに調査対象が例から外れるものだらけなので、みんなが問い合わせをし事務部門はてんてこ舞い。事務部門の他の業務まで遅延してみんながイライラ。そのうち、事務部門から記入例を数倍増しした説明書がやってくるんだけどあまり改善はしない。見かねた同僚が、記入のための判定フローチャート作って事務部門に持って行ったら大喜びされ、すぐに配布されてその期は無事終了した。でも次の期に判定基準が変わったらしく、前の期とはちょっとちがった記入例の列記が配布されてた。フローチャート作りなおす能力はなかったらしい・・・
いきなりjavaやVBでforループで1から100まで表示させることに意味があるとは思えない。
しかし、それすらできない人には、プログラミングは無理。何事も基礎は必要でしょう。基礎だけを取り上げると無意味に思えるかもしれないけど、実はそうではないよね。
教えるとすればそこに至る設計。机上でフローチャートでも書かせてみればいい。
ループを書くことすら知らない人には、どのくらいまで手順を分解すれば良いかは理解できないんじゃないかな?
もっと言うなら、
人類に許された意味のある(足し算引き算や合成の出来る)抽象は数字と関数のみ(「xと置く」とか「fと置く」とか)で、
それより高次の抽象(状態とかフローとか)はObjectクラスみたいに「そこに有る、無い」以上の操作が定義できないものばかり。
という諦念を教え込む事が必要だと思います。
だから、数字と関数のみでシステム全てを表現しなければならず、決してそれ以上の概念を部品化した変なフレームワーク(RDBを“抽象化”するとかwww)を「発明」して周りの人間を惑わすとかする人間がこれ以上出ない様にすべきだと思います。
たとえそれが院卒の人間だとしても、皆が常識として、「基礎となる代数を持たない抽象や部品化」を提唱したら「うさん臭いもの」だとして非難・排斥出来るだけの素養を持たせる事が重要だと思います。
プログラミング技術そのものではなく考え方を教えるという意味では、カルネージハート [wikipedia.org]みたいなものがいいかもしれませんね。
マシニングセンターのプログラムを教えるというのはどうだろう?どうやって加工するか手順を考えて各自でプログラムを組み、実際に動かしてモノを加工し、どのくらいの時間かかったか、寸法精度にどんな差があるか、いろいろ学べるよね。
ま、予算が足りなくて夢のまた夢ではありますが…。
フローチャートを機械実行して結果を見せるよりすごろく盤として読ませると良いのではないでしょうか。
計算式と同じように解けることを覚えさせた上で文章題を与えて、フローチャートを立て結果を求めさせます。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
長期的な見通しやビジョンはあえて持たないようにしてる -- Linus Torvalds
何を教えるか (スコア:0)
論理的思考を養うという意味で、コーディング授業も悪くない。
でも、何を教えるのかが聞きたい。
いきなりjavaやVBでforループで1から100まで表示させることに意味があるとは思えない。
教えるとすればそこに至る設計。机上でフローチャートでも書かせてみればいい。
教材としてフローチャートを設定すれば実行して結果が出るようなツールがあると良い。
教えたいのが「現場で使えるコーディング能力」だけなら、そんな義務教育はいらないの方に同意する。
Re:何を教えるか (スコア:4, すばらしい洞察)
その授業の結果として、Hello Worldしか動かせなかった、ってレベルだったとしても、
彼らが現在使っている、そして、今後も使い続けていくだろう様々なコンピュータ機器は、
何か魔法的なよくわからない力で動いているわけじゃなくて、
誰かが書いたプログラムの通りに動いているだけなんだ。
ということが学べたならそれはそれで有用なんじゃないですかね?
Re: (スコア:0)
その授業の結果として、Hello Worldしか動かせなかった、ってレベルだったとしても、
彼らが現在使っている、そして、今後も使い続けていくだろう様々なコンピュータ機器は、
何か魔法的なよくわからない力で動いているわけじゃなくて、
誰かが書いたプログラムの通りに動いているだけなんだ。
ということが学べたならそれはそれで有用なんじゃないですかね?
いや、どんな言語でも「Hello, World」レベルだとすると
『大師父の言ったとおりの呪文を唱えた!』
でしかないだろ。それは魔法と同じだ。
Re:何を教えるか (スコア:1)
確かに#include っておまじないを教わるしなぁ。
Re:何を教えるか (スコア:2)
仰るとおり論理的思考を養うにもいいですし、「やりたいことを手続きで表現する力」を養うにもいいですよね。
皆にそれがあればいいのに・・・。それがない人が(少なくとも)事務部門に多いせいで、苦労してます。
毎期、事務部門からやってくる「~調査の依頼」ってやつの説明文が、記入例の列記になってるんですよね。
そのせいで、例から外れたものは事務部門に問い合わせないといけない。
残念なことに調査対象が例から外れるものだらけなので、みんなが問い合わせをし事務部門はてんてこ舞い。
事務部門の他の業務まで遅延してみんながイライラ。
そのうち、事務部門から記入例を数倍増しした説明書がやってくるんだけどあまり改善はしない。
見かねた同僚が、記入のための判定フローチャート作って事務部門に持って行ったら大喜びされ、すぐに配布されてその期は無事終了した。
でも次の期に判定基準が変わったらしく、前の期とはちょっとちがった記入例の列記が配布されてた。
フローチャート作りなおす能力はなかったらしい・・・
Re:何を教えるか (スコア:1)
いきなりjavaやVBでforループで1から100まで表示させることに意味があるとは思えない。
しかし、それすらできない人には、プログラミングは無理。何事も基礎は必要でしょう。基礎だけを取り上げると無意味に思えるかもしれないけど、実はそうではないよね。
教えるとすればそこに至る設計。机上でフローチャートでも書かせてみればいい。
ループを書くことすら知らない人には、どのくらいまで手順を分解すれば良いかは理解できないんじゃないかな?
Re:何を教えるか (スコア:1)
もっと言うなら、
人類に許された意味のある(足し算引き算や合成の出来る)抽象は数字と関数のみ(「xと置く」とか「fと置く」とか)で、
それより高次の抽象(状態とかフローとか)はObjectクラスみたいに「そこに有る、無い」以上の操作が定義できない
ものばかり。
という諦念を教え込む事が必要だと思います。
だから、数字と関数のみでシステム全てを表現しなければならず、決してそれ以上の概念を部品化した変な
フレームワーク(RDBを“抽象化”するとかwww)を「発明」して周りの人間を惑わすとかする人間がこれ以上
出ない様にすべきだと思います。
たとえそれが院卒の人間だとしても、皆が常識として、「基礎となる代数を持たない抽象や部品化」を提唱したら
「うさん臭いもの」だとして非難・排斥出来るだけの素養を持たせる事が重要だと思います。
Re:何を教えるか (スコア:1)
プログラミング技術そのものではなく考え方を教えるという意味では、
カルネージハート [wikipedia.org]みたいなものがいいかもしれませんね。
ψアレゲな事を真面目にやることこそアレゲだと思う。
Re:何を教えるか (スコア:1)
マシニングセンターのプログラムを教えるというのはどうだろう?
どうやって加工するか手順を考えて各自でプログラムを組み、実際に動かしてモノを加工し、どのくらいの時間かかったか、寸法精度にどんな差があるか、いろいろ学べるよね。
ま、予算が足りなくて夢のまた夢ではありますが…。
Re: (スコア:0)
フローチャートを機械実行して結果を見せるより
すごろく盤として読ませると良いのではないでしょうか。
計算式と同じように解けることを覚えさせた上で
文章題を与えて、フローチャートを立て結果を求めさせます。