新しいものを表示

難しい><; オレンジ的に実際に教えた時の経験上は、プログラミングできない人に1対1で教える時にはその部分逆に取っ払わないと混乱してしまうので「とりあえず忘れて><」ってしてる
ので、このあたり書いた><
mstdn.nere9.help/@orange_in_sp
mstdn.nere9.help/@orange_in_sp

orange さんがブースト

「設計という作業の完了条件(メタな条件)を誰が判断するか」という話で、まあ普通に設計者がそれを判断するものだと思います。
であれば、その完了条件は「そこまで分割したならこういう部品がありますね!」という(教えられる側から見て偶発的な)指摘のみに依るのではなく、教えられる側が最初から参照できる場所に「おっ、これならもうこの部分の設計は完了したといえるな」と判断できるように提示されているべき、という意図の話です

土台って前提で前提条件ってどう説明するのか?><みたいな話だと思うんだけど・・・><

オレンジは、その土台の形はどう教えるの?><; って・・・><

orange さんがブースト

その土台の形が最初に提示される必要があるのではという話をしていたのですが……

x再起に o先に
x再起に教えられてる人が
x教えられてる人が先に

これべつに、土台に付く部分を邪魔するって話じゃなく、再起に教えられてる人が途中で気づける(=自分でたどり着ける=設計できる)のであれば、「という事はあれを使えば!!!」「その通り!><」で済むよもちろん><
そうじゃなく通過しそうになっちゃった時に「それは実は既にあるんです!><」って教えてあげると、「そんな便利なものが!」ってなるみたいな感じ><

orange さんがブースト

「自分で気付く余地がある」というのは大事だと思っていて、それがないと「自分で気付けたかもしれないことも、インストラクターから全て指摘されるまで確定できない」という他人に制御されている感が強烈になる

スレッドを表示

自分で考えるクセがつけられないのであれば、どうしてそうするのか?を実体験として学べなくて、ソースコードコピペしてるのとあんまり変わらないよって言いたい・・・><

どこまで掘り下げるのか?の問題はあるけど、知識のを知識としてのみしか教えないのであれば自分で考える方法は学べないし、ソートを教えられる時に「どうしてそうする出来るのか?」まで自分で考えるように教えないのであれば、それはソースコードコピペして済ますのと大差ないかも><

orange さんがブースト

それは提示されることと活用することを同一視しているから発生する懸念であって、たとえば数学書で定義を覚えていなければ後から戻ってもう一度閲覧できるのと同じように、提示された条件も指摘された後で戻って確認することもできるわけです

orange さんがブースト

もっと小さな問題で考えるなら、「加算できる機械があります」という前提条件と「こうすると加算ができます」という知識はそのまま交換可能ではないわけで、設計を試してもらううえで、後者を考え出す必要がないのであれば、前者の条件を事前に与えるべきなのでは、ということです

スレッドを表示
orange さんがブースト

「ソートは与えられているので今回その中身を考える必要はありません」という条件と、「こうするとソートができます」という知識は全く別の話で、たとえば後者を知っていたからとして今回の設計でそれを使うとは限らない(それを掘り下げるべきではないかもしれない)

この土台とくっつく瞬間に「なるほど!!!!><」ってなるし、教えてる側の時だとその瞬間まで「(うっせーな・・・)」みたいな反応だったのが「そういうことか!!! なるほど!!」みたいな反応になって質問してきたりするし、なんというか・・・><

それはそうだと思うけど>< でも、うまく説明できないけど用意した土台にくっつく瞬間の部分?><みたいなのは、初心者だからこそ提示してても気づけない可能性が高いし、さっきの「加算命令というものが!><」みたいな風に教えてあげないと、通過(?)しちゃうかも><

orange さんがブースト

無論、現実に高度な問題を考えるうえでその壁というか限度が見えないということもままあるでしょうけど、それは初心者に教える例として使える難易度の問題ではないというだけで、選択のミスではと

スレッドを表示
orange さんがブースト

そういう、「これ以上掘り下げる必要はありません」という壁のようなものは、設計そのもの(いわゆる「答え」)を直接には記述しないわけで、これが事前に提示される必要があるのではと考えます

スレッドを表示
orange さんがブースト

条件が足りないと「足し算をする必要があります→まず AND と XOR を作ります」みたいな分割までやらないといけない(それをやる直前まで「ここで終わり」と気付けない)かもしれないわけで、「ここまでいけば十分であろう」というのを設計者自身に自覚してもらう/見通してもらうためには「足し算できる機械が最初から用意してあります」という前提条件が必須だと思うわけです

ていうかプログラミングって設計だよね!>< 設計できないとオリジナルのコードは全く書けなくて当然だよね!><って話に、
個別のアルゴリズムを予め教えてっても、アルゴリズム自体を「自分で考えながら学ぶ」んじゃなく、答えを教えられておぼえるみたいになっちゃうよね?><
なぜならば、プログラミングに於いての「自分で考える方法(=設計の考え方)」を学んでないんだから?><

古いものを表示
:realtek:

思考の /dev/null