MINDSTORMS 第 4 章 コンピュータの言語と人間の言語
久野靖∗2010.8.25

1

イントロ2

□ 世間や教育心理学では→身体的技術習得に意識は役立た□ むかでのエピソードない□ 合理主義の今日一般に言われていること (ホント?)• スポーツを職業とする人 (例:コーチ) はそうではない• 思考が行動を妨げる• 思考が学習を妨げる (!!)

□ 例:

• 自転車の乗り方: 「練習していればできるようになるよ」

己」から成るとする• いずれかが自分を随時的に支配• テニスの習得には、いつ制御を取りいつ譲かをそれ• ある種の知識は、言葉で表現したり、意識的な思考ぞれの「自己」に教えることが大切で把握できない□ パパートの見解:

行動以外に表せない種類の知識 □ 「分析的」「全体的」の選択を学習者に委ねることは特徴的

二分を拒否• 学校のカリキュラム改革では「選択を上から与える」• 言葉で全部表せることもないし、全く表せないこともない• 知識の発展の歴史:
技術の発展• ガルウェイがすべて正しいとは言わないが「習得について組織的に考える」必要性については同意

言葉や図解の効力を増すような• 自転車の例:「乗り方を覚えるのに効果がある程度で3いいから知識を交流」□ 4 章の中心課題:

ティモシー・ガルウェイ「Innter Tennis」• 自分を「分析的な自己」と「全体論的・直観的な自□ 大勢の学者 (=行動主義) の見解• ブルーナーの主張:

身体的技術の習得

コンピュータ言語□ コンピュータ言語:

学習について話すための叙述的な言「機械を支配する手段」かつ「思考のための叙述的かつ新しい言語」

語の発展• コンピュータを知らない人でも「インプット」「アウ• 「やってみる」のが最善とされる事柄 (身体技術等)トプット」「フィードバック」などの概念を」使うに注目• プログラム上の概念が身体的技術にどう適用できる
か → プログラム行為を叙述的な考案の源泉とする• 体育を知的でない科目として扱うのと正反対□ 科学者は形式的かつ叙述的な言語を使用□ 多くの科学的/数学的進歩 → 組織的に考えるにはあま• 子供も身体的技術 (例:お手玉) の習得に同様の言語を使用可→科学者と共感する立場に身を置く

りに無定形と思われた事柄を表現する言葉や概念を与• 普段身体を使って何かしていることも「科学していること」と思うように

• 例:

えた
デカルトが蝿の飛ぶのを眺めていて解析幾何を考案 → 代数の言葉を空間と結びつける → 表象能• デカルトの直交座標が日常に関連→デカルトに意味

力の前進+ 自分自身に意義を見出し得る• 円の描き方を考案した子供も同様• これまで全体的・視覚/筋肉運動知覚によってしか知られなかった事柄を分析的に表現する能力を得る∗ 筑波大学大学院経営システム科学専攻1□ お手玉やむかでには微分方程式はやりすぎ → コンピ• 2 人の小 5 生マイケル (外向的)、ポール (内向的)ュータ言語の形式が向いている• ポール: 早くから構造的プログラム、マイケル:
直線的にこだわる• コンピュータ → やるべきことを十分な正確さで叙述することが必要→ 強力な叙述形式の考案□ コンピュータサイエンスという名称は不的確:• 2 人が竹馬乗りにチャレンジ• マイケルは直線的に手順を思い浮かべ繰り返し練習して習得

大半は「叙述ということ」「叙述のための言語」の科学• ポールの方が早く習得 (2 人とも驚く)• ポールは「バグ」を発見して修正する方針

4

例: 構造的プログラム□ キース (小学 5 年):• 「足を前進させるのでなく、竹を前進させようとする。足は竹が運んでくれる」→プログラミングを身図 10a のような線画をコンピュー

体的技術習得に応用

タに描かせたい• 少なくとも「特色を表明することを可能に」• マイケルではより明らか:• まず行動を 1 歩ずつ記述 (図 10b) →バグがあるコー

2 人のやり方の違いに気付く

ド (図 10c)• バグは悪ではなく「間違いを直す」のは普通のこと• しかし何が悪かったのか想像がつかない (プログラ5ムの書き方に起因)□ 構造的プログラムのやり方では:作って全体手順から呼ぶ

2 つの V と正方形を □ お手玉:

数学を使って身体的技術を学ぶよい例• 構造的プログラムという考えが身体的事項に織り込まれることで力TO MANVEEFORWARD 50
VEE
FORWARD 25
HEADEND□ 2 つの方法:

シャワー式とカスケード式• カスケード式の方が投げ方が 1 種類なので習得しやすい□ 問:• さらに VEE、LINE、HEAD を定義して全体を完成習得したい人が言葉で分析的に描写しようとすると助けになるか妨げになるか?
□ 言葉による描写では混乱を招くようなものもある□ ロバート (中 1) の言葉

1. ボール 1 と 2 を左手、ボール 3 を右手にして始める。
2. ボール 1 を右手へ高く放物線状に投げる
3. ボール 1 が頂上にある時に、ボール 3 を左手へ、同様の高い放物線状に投げるが、ボール 3 はボール 1 の軌道の下側に投げるように気をつける。
4. ボール 1 が右手に到着し、ボール 3 が頂点にある時に、ボール 1 を、捕えボール 2 をボール 3 の軌道の下側に投げる…

• 「僕のプログラムは皆、頭に入る大きさになった」• 「前は混乱したが、今はいっぺんに噛みこなせる以上は口に入れない」• 理解できないほどの段階なしに大きな知的構造を作れる□ キースの場合• これは強引な直線状のプログラム• 以前も部分手順に触れたことはあったが拒否 (直線的構造になじむ)• 構造的プログラムの方がいいことを示す□ 目的:• MAN をデバッグする時はじめて必要に

TO JUGGLE という動作の手順を作ること• 部分手順として TOSSRIGHT、TOSSLEFT を使う□ 大人「どうしたらいいか分かってるでしょう?」子供「部• この手順はタイミングも考慮する必要 (TOSSxxx は捕らえることまで含む)分手順に書き直さないといけないんじゃないか?」• 正しいやり方を押しつけるのでなく、自分の探求で□ 並行処理の表現 → WHEN デーモン自分のものに (コンピュータの柔軟性と力による)□ 直線的 vs 階層構造:

お手玉• 例: 「WHEN HUNGRY EAT」(条件が満たされたらそのつど x を実行)

身体技術にも現れる

2□ ここでは 2 つの WHEN デーモン

• プログラミングの概念がデバッグを容易にし、教育を効果的にWHEN なんとか TOSSLEFT
WHEN なんとか TOSSRIGHT□ 複雑な過程を叙述する→基本単位に分割→その中のバグ発見は容易• 頂上で動いている向きが問題 (図 13x) →それをとりいれる• 複数のバグがあると発見が難しい→分割すれば 1 つ

TO KEEP JUGGLING
WHEN TOPRIGHT TOSSRIGHT
WHEN TOPLEFT TOSSLEFTのバグに• 例:• ないし、もっと簡単に→複数のバグTO KEEP JUGGLING
WHEN TOPx TOSSx□ 教えるために応用するには?

• 1.

初心者がいきなり 3 つの玉でやろうとした場合□ 反復練習しているうちに「たまたま」効果的な動作が発現→ いくつかの仮定を認識• 例:

学習者は左投げと右投げができる

たまたま目の動きが少ない状況→これを習得• これでもできるが、時間が掛かる• 2. 頂上で左向き、頂上で右向きというきっかけに□ 学習過程を意識し制御することでずっと効果的に学習でなる状態が分かる
きる• 3. TO KEEP JUGGLING という手順に従ってこれらを組み合わせられる□ 段階 1:• 瞬時にできるわけではない。何時間も掛かるのが 20〜30 分に学習者の投げ方を調べる (1 つのボールを片手から他方に投げさせる)• 多少手を加える必要があることがしばしばある□ 段階 2:6

組み合わせられるかを調べる□ ロゴに始めて来た子供→うまく行かないと消してしまう

TO CROSSTOSSLEFT
WHEN TOPRIGHT TOSSRIGHTEND• 最初から書き直して「1 発で」やりとげようとする• 「小さい間違いはあるけれどよいプログラム」 vs「失敗」• 学校では「間違いは悪」→間違いを検討したがらない• 左右のボールの交換。通常これでもすぐにはできない□ 段階 3:

デバッグへの抵抗• プログラミング体験→間違いを検討し直すことの効
用を信じるように手順にバグがあるか調べる• バグの例: 投げたボールを目で追う → 2 番目の投□ ロゴ環境では子供は自分の間違いに寛容になっていく
げができない• ロゴの教師の態度にもよる: 教師も学習者であり、□ 段階 4: デバッグ
誰でも間違いから学ぶ• 例: 目で追うことが問題なら、ボール 1 つ目で追わ□ 例: クリスマス企画にメリークリスマスと描くプログずに投げる練習
ラム• 放物線の頂上付近に目を止めたまま投げる (しばら• 時間がなくなったので教師が家でプログラムを書いくの練習でできる)てくる• TO CROSS に戻る□ 段階 5:• 先生のプログラムが正しくなかった時、子供は「先生3 つのボールに進むにもプログラムをどう直していいか分からない」ことを発見• 2 つのボールを片手、もう 1 つを別の手に持って始める□ 通常の教室:• TO CROSS から TO KEEP JUGGLING への移行は難し
くない

教材そのものに研究課題を生み出す要素が欠けている• プログラミングでは:□ お手玉の分析で博論を書いた人も3

教師と生徒が知的な共同研究• 教師も出会ったことがない状況→知らなかったふり• コンピュータのプログラムの場合はそのような制約をする必要もない

なしに安全に複雑性に対する感覚を身につけさせられる• 「先生のいうとおり」でなく「先生のするとおり」で学習□ 現代の科学や工学→複雑な企画を実現する機会を生み出• 教師のすべきこと→完全に理解できるまで問題を追求

すいっぽう、簡素さの持つ力も教えてくれている□ ロゴ環境は小学生が (日常生活では無い完璧さで) 理解できる問題を提供• 挿話: デボラ (小 6) は学校の勉強に問題があり、タートルにも恐る恐る• 例:• どんな小さな試みにも教師の同意を求める

屋根が下に描かれてしまうプログラム• ある時:方向転換に「RIGHT 30」の命令しか使わないと決めた →マイクロワールドの中に自分の決めた• 「タートルになってやってみよう」でなぜそうなったかは完璧に理解

マイクロワールド• 大人も REPEAT [FORWARD 100 RIGHT 60] で三角• その制約下で何ができるか探求することに興味

形とかよくある• 教師が簡単な方法を教えても自分の意思で制約を維持• タートルの行動を完全に理解→子供にとって他に類のない経験• やがて行動全般に大胆さが現れる変化□ コペルニクス、ガリレオ … 物理学とは関係ないような

7

迷信的依存から人々が逃れることを可能に

タートルの価値□ 反論:• デボラの経験も「数学的な理論の成功が道具以上の役割」

子供はタートルについて完全に理解していないし、その背後の機構についても知らないではないか?

• つまり「理念の力、精神の力を肯定」• だから子供を煙に巻いているだけではないか?
□ お手玉でも同様。手順による記述で、本質的な要素が把握できたか、または複雑性を覆い隠すことで神秘性を持たせたか?

• 例: ニュートンは物体を点に抽象化することで宇宙を理解 →本質の把握か、複雑性の隠蔽か?
□ 科学者のような考え方とは→これらの認識論的問題に直観的理解を持つこと• タートルで学ぶことは子供にこれらの問題に接する機会を与える□ タートルの世界が閉じた世界だということは子供にもすぐ分かる• これを用いて独立したさまざまなマイクロワールドを提供することも (次章)
• 子供はマイクロワールドの属性を無関係な質問に煩わされずに探求• この探求の習慣を科学的な理論の習得に移しかえ可能□ コンピュータ世界に内在する単純さ→複雑な企画を実現
可能

• 例:

組み立て式のおもちゃ、複雑な構造のあそび→実行の段になると物や人間に関わる制限にぶつかる

4