基 応専 般

子供の創造的活動とプログラミング学習阿部和広（青山学院大学社会情報学部）
こ れ か ら の 子 供 に 求 め ら れ て い る の は，
ATC21s☆1が提唱する 21 世紀型スキルだという．

これには，批判的思考力，問題解決能力，コミュニダ（横型の可変抵抗器）を操作して，画面のパドル（スプライト）を画面の端から端まで左右に動かすというものである．
このとき，スライダからは，0 ～ 100 が変数の値ラシーなどが含まれる．ひたすら与えられた課題をとして得られること，パドルが移動できる範囲は x解くことを求められてきた子供たちにそれが可能な座標上の -240 ～ 240 であることは所与である．しのだろうか．また，プログラミング学習を通して，たがって，これは図 -2 のような単純な変換式で表それが獲得できるのだろうか．

すことができる（別解もある）．

子供の創造的活動とプログラミング学習

ケーション能力，コラボレーション能力，情報リテ

しかし，多くの学生は図 -3 のような単純な代入大学におけるプログラミング
教育の例

式から先に進めない．これだと，パドルは画面の右側の半分弱の範囲でしか動かせない．
こ の と き， 仕 組 み は 分 か っ て い て も， そ れ を

筆者は，青山学院大学で「社会情報体験演習」とScratch で表現する方法が分からないことも考えらいう授業の一部を 2012 年度から担当している．これる．そこで，個別に聞きとりを行ってみると，中れは社会情報学部 1 年次前期の必修科目で，90 分

学校で学んだはずの一次関数の傾きと切片の話と，× 6 回で行っている．この授業では，MIT メディアいま与えられている課題の間に関連が見いだせていラボで開発され，筆者が日本語版を担当したブロッないようだった．これは複数の年度を通して共通のク型のビジュアルプログラミング言語，Scratch☆2と，センサやアクチュエータなどさまざまなデバイスを組み合わせて，自分たちのアイディアをグルー傾向である．
このことに限らず，既存の知識を応用することや，示された例題から逸脱すること，教えられていないプごとにプロトタイプとして実現し，プレゼンテーションする（図 -1）．
この内容は，MIT メディアラボの初代所長である Nicholas Negroponte 教 授 が 唱 え た ス ロ ー ガン，”Demo or Die” を実践するものだ（このスローガンは現所長の伊藤穣一氏により，”Deploy orDie” にアップデートされている）．
授業の導入として，ボールをパドルで跳ね返すゲーム（いわゆる PONG）を使った課題を課している．
具体的には，センサボードに取り付けられたスライ☆1☆2

http://www.atc21s.org/
https://scratch.mit.edu/

図 -1

Scratch の画面（PONG）

情報処理 Vol.57 No.4 Apr. 2016

349

特集

プログラミング入門をどうするか

オブジェクト指向プログラミング，並列処理までを
図 -2

扱う．90 分の場合は，自由製作時間に 30 分くらいパドルをスライダで動かす式（正解）を当てるので，実質は 60 分くらいの内容になる．
こう書くと詰め込みすぎではないかと感じられる

図 -3

パドルをスライダで動かす式（間違い）かもしれない．しかし，小学 3 年生くらいであれば，ほぼ全員がこれらの意味を理解し，自分のもの機能やブロック（メソッド）を試してみる傾向は一として使えるようになる．ただし，用語は一切説明概に低いように見える．一方で，自分で考えるのでしない．また，単元ごとに時間を区切ることもしなはなく，正解を求める声はいくつか聞かれた．

い．子供たちにとっての目的はゲームを作る（遊ぶ）

この授業を開講している 1 年次の前期は，入学試
験からさほど間がない時期である．つまり，この状ことであり，前述の概念はそのために必要なものとして，その都度現れてくる．

況は入学試験に合格する学力があったとしても，そスクリプト（プログラム）は，漢字仮名交じり文

れを問題解決に活かせるかどうかは別の能力である

か，平仮名のみに切り替えることができ，完全では可能性を示している．

ないが，日本語として読み下せるように作成してあ

この演習では，口を開けた学生に教員が知識を注ぎ込むのではなく，学生自身が手を動かして自らり，単に書くだけでなく，ところどころで音読を行っている．

問題を解決することを意図的に強いている．そのこのワークショップを進める過程で，共通して見際，インターネット検索を含む，資料や文献の活用られることがある．それは，ネコを歩かせる速さをは制限していない．マニュアルも教科書も与えられ過大な数（99999…9 など）にすること，ネコのコず，教員からの答えも期待できないと気付いた学生

ピーを大量に作ること（子供によっては 100 匹近く）
，は，最終的には課題に真剣に取り組むようになる．

ネコを極端に大きくする，あるいは小さくするなど

しかし，これを大学で行うのはいかにも遅く，初である．これらは，ファシリテータ（従来の教員に等中等教育段階で習慣付けできているべきではない相当する人．助力者）がそう指示したからではなく，だろうか．

いずれも自発的に試している．そして，その結果を面白がり，周りの友だちにも教えることで教室中に小学校におけるプログラミン
グ学習の例
筆者は主に小学生を対象に Scratch を使った民間のワークショップや，学校での授業と課外活動も全1）

広まっていく．これは地域や学年を問わない．
また，説明していないスプライトやブロック（命令）を勝手に使ったり，自由製作に入る前に独自の改造を試みることもよくある．設定した休憩時間に休まないのも共通している．

国で行っている ．回数は年間で数十件ほどで，そ自由製作では，シューティング風だったり，RPGこでよく用いているのが，「ネコから逃げろ」（ネコ（Role-Playing Game）風だったり，ビジュアルノベ

☆3逃げ）という入門用の例題である．

ル風だったり，もはや分類不能だったりと，原型をネコ逃げは，ネコとネズミのキャラクタ（スプとどめないほどにオリジナリティが発揮された作品ライト）が追いかけっこをするゲームを題材にしが作られる．これは創造性の発現と言って差し支え

た 30 ～ 120 分（通常は 45 分× 2 の 90 分）の内容ないだろう．

で，Scratch の基本操作から，逐次・繰り返し・分岐，この活動を通して感じられるのは，子供たちが作ることと遊ぶこと，さらには学ぶことの間に違いが☆3350

http://swikis.ddo.jp/abee/77

情報処理 Vol.57 No.4 Apr. 2016

ないように見えることだ．その中で自発的に課題に取り組む姿勢や試行錯誤する態度も生まれている．

特性と子供たちの好奇心が結び付くことが，先に挙やりたいことを達成するためなら，代数や三角関げたような大きな数を試してみることにつながって数を学ぶこともいとわない（これは毎回聞かれる）．

いる．そこで面白い結果が得られることが，さらにこの子たちが，ほかの授業ではそうではないことは，試してみることの動機付けとなる．

普段子供たちを見ている教員のコメントから得られさらには，自由度の高さもある．自由製作のくだている．典型的なものは，「こんなに真剣にやってりで紹介したように，子供たちが作りたいものはさいるところを初めて見た」，「間違いを恐れずに試しまざまである．そして，コンピュータは，その基本ている」などである．

的な特性として，どんなものでもモデル化してシミュレートできるという性質を持つ．

創造性はどこから来るのかてもたらされるのだろうか．

チメディアをサポートし，オブジェクト指向と並列処理をパラダイムとする Scratch は，子供たちが関心を持ちやすいゲームやアニメーションに適合してまず考えられるのは，新奇なものによる効果であいる．このことと，ブロック言語によるコーディンる．つまり，物珍しいおもちゃを与えられた子がそグの敷居の低さが相まって，短時間で意味のある作れで遊んだだけではないかということだ．よほどひ品を作ることを可能にしている．これは，厳密な分どいものでない限り，どのような教材であっても，析・設計を行わずに修正の繰り返し（イテレーショ

最初の数時間は子供たちの興味を惹くだろう．

ン）で開発するラピッドプロトタイピングやアジャ

では，2 年前に Raspberry Pi☆4（きわめて安価なイル開発に近い．

超小型パソコン）が全児童に配られ，Scratch を教でき上がった作品は，Web サイトにアップする科の授業で使うことが日常化している品川区立京陽ことで CC BY-SA（クリエイティブ・コモンズ 表示2）

小学校の場合はどうだろうか ．教室に集まった子─継承）をライセンスとする共有の資産となり，そは，慣れた手つきで自分の Raspberry Pi をディスプ

れをベースにしたリミックスもできる．これはトレレイやキーボードに接続し，OS を起動する．Scraースが可能で，GitHub

tch が立ち上がっても特別はしゃぐこともない．こス）とよく似ている．

☆5（ソースコード共有サービ

れは，書道セットや鍵盤ハーモニカと同じ態度だ．

また，正しさが客観的に分かるのもポイントであしかし，授業が始まり，先生からテーマが示されるる．ある振舞い，たとえば，ネコがネズミにぶつかと，初めての子と同じような集中力を発揮する．こったらニャーと鳴かせたいとき，ぶつかって鳴かなのことから，プログラミングを使った学習の効果はければそれは間違っており，ぶつからなくても鳴く一過性ではないと考えられる．

とすればそれも間違っている．正解にたどり着く道

次に，対話性も可能性の 1 つに挙げられるだろう．
Scratch は対話的なプログラミング環境である．つ筋は複数あるとしても，正誤の判定ができることにより，仮説とその検証を進めることができる．

まり，何かの操作を行えば，すぐに反応が返るようそして，複数の正解の中にも最適な解があり，そにできている．このことは，ボタンをクリックした

れはさまざまな条件によって変わってくる．計算量ときのフィードバックから，スクリプトの実行時にを重視するか，メモリサイズを取るか，リアルタイ

ブロックを組み替えると即座に挙動が変わることにム性か，保守性を考慮するかなど，定量的に測れる至るまで一貫している．すなわち，思い付きをすぐ指標と定性的な見方も加味しながら，異なる制約をに試して，その結果を得られるということだ．この考慮して決めることになる．

☆4☆5

https://www.raspberrypi.org/

子供の創造的活動とプログラミング学習

このような子供たちの積極性と創造性は何によっ文字だけでなく，グラフィクスや音といったマル

https://github.com/

情報処理 Vol.57 No.4 Apr. 2016351

特集

プログラミング入門をどうするか

ここで挙げたようなさまざまな特徴は，その一部だけであれば，音楽や図工でも実現可能だろう．しかし，全体を総合的に扱うことができることと，物理的な制約がなく現実に存在しないものも対象にできることは，プログラミング学習の優位性である．

小学生と大学生の違い
このような小学生と，さきほどの大学生の違いはどこにあるのだろうか．大学生もかつては小学生だ

図 -4

Hour of Code の例

ったはずである．大学生は，せっかく自由が目の前

HoC にはいろいろな参加スタイルがあり，Scratchにあるのに，それを使うことを恐れているようにもを開発した MIT メディアラボも独自のカリキュラ見える．彼ら彼女らは，試験問題のような形式化さムを作成している．その中でもよく使われているのれた課題を解くことについては，高い能力を持ってが，Code.org が無償で提供しているパズル型の課いる．しかし，「自分のアイディアをかたちにせよ」

題を解くチュートリアルである（このパズル自体をのような，曖昧模糊とした課題を前にすると，「何Hour of Code と呼ぶこともある）（図 -4）．

も思い付かない」，「（単位を取るには）どうすればパズルには有名な映画やゲームのキャラクタを使よいか教えてください」ということを平気で言う．

ったものなどが複数用意されており，それぞれが 15

この根底にあるのは，受験勉強を始めとした目的ステージ程度の問題で構成されている．子供たちは，を達成するための最適化を至上とする考え方がある

升目に区切られたステージ上のキャラクタを，与えのではないか．それに対して，小学生は他者から与られた指示に従って動かすプログラムを書くことをえられた目的意識が希薄で，純粋に自己の楽しさを求められる．ステージごとに逐次・繰り返し・分岐追求するが故に，創造性を発揮しているのではないなどのテーマがあり，進むにつれて難易度が上がるか．両者を観察していると，一般に小学生のパフォようになっている．少ないステップ数で作る方が評

ーマンスは期待より高く，大学生は期待より低い．

価が高くなるようになっており，最終ステージを終これは，大学生に小学生と同じことをやらせるべきえると，修了証がもらえる（得点は書かれていない）．という主張ではない．大学生と小学生では，興味も関これは Google Blockly という JavaScript で書かれ心も異なっている．それぞれにマッチした各人が作るたブロックプログラミング言語フレームワークで作ことに意味を見いだせる課題を考える必要がある．

成されており，パソコンだけでなく，タブレット上の Web ブラウザでも動作する．学校で使うことも352

パズル型チュートリアルの問題考慮され，ユーザ管理や進捗管理もできるようにな

米国の NPO である Code.org が中心になって進ードに変換したものも参照できるようになっている．

めている ”Hour of Code”（HoC．1 時間だけでもプ

このパズルは子供たちの興味や関心を惹く上で大ログラムを書いてみよう）運動は，数年前から日変良くできている．筆者が行うワークショップで普本でも行われるようになった．特に 12 月の 1 週間

段は Scratch を使っている子供たちを対象に行ったを ”Computer Science Education Week”（計算機科ところ，子供たちは夢中になって取り組んでいた．

学教育週間）と定め，企業や NPO が協力して各地

しかし，このパズルは，子供たちの中から出てきでワークショップなどのイベントを開催している．

たものではない．ほかの誰かから与えられたもので情報処理 Vol.57 No.4 Apr. 2016っている．また，ブロックを JavaScript のソースコある．確かに，最終ステージまで進めば，ある程度いに問題を出し合うことをより楽しんでいた．の自由製作を行うことができる．しかし，使えるブ子供たちの管理が楽で，教員の負担が少なく，子ロックや素材など，Scratch と比較してもできることは供たちが楽しんでいるからと言って，それが良いカ限られている．また，パズル自体を自分たちで作り出リキュラムとは限らない．

せるようなメタな仕組みは提供されていない．そのため，解き終わった子供たちは短い時間で飽きてしまった（一部の子はチート（システムの裏をかく技）の方

プログラミング学習の必要性
世の中は常に変化する．私たちを取り巻く環境もータとしては，子供たちからの，あれをやりたい，こ社会構造も変わっていく．その際に，教科書やマニれをやりたいという例外的な要求がなく，システムにュアルが与えられなければ，あるいは，人から教え進行を任せられるので，その点は大変楽だった．

られなければ何もできないのでは困る．

このとき，子供たちが行っている内容をつぶさに仮にそれらがあったとしても，書かれているこ観察したり，子供たちへの聞きとりを行わない限り，とを鵜呑みにするのではなく，問題を適切にモデはた目には Scratch の活動との差異を見つけるのはル化し，シミュレーションを行い，バグとデバッ

難しいだろう．教員や保護者の目から見ても，楽しグを繰り返して検証できる人材が求められる．こく取り組んでいるように見える．

れが，21 世紀型スキルに加えて，Computational問われるべきは，このパズルを通して子供たちが何を学んだのかということである．与えられた課題

子供の創造的活動とプログラミング学習法を発見して，それで遊んでいた）．一方，ファシリテThinking（プログラマ的思考法）が注目されている
理由の 1 つだろう．
世界最先端 IT 国家創造宣言を解くことがゴールであるとするならば，先に挙げ☆7で謳われている高たようなプログラミング学習の意義を損なっている

度 IT 人材の育成は重要な課題である．しかし，目可能性がある．これで逐次・繰り返し・分岐を理解的への過度な最適化は，逆にその達成を遠ざける．

したとしても，大学生が線形変換をプログラムの中第 3 代アメリカ合衆国大統領 Thomas Jefferson がで使うことを思い付かなかったように，パズルの中言うような，自ら学ぶことのできる啓発された国民の出来事として，一般化して用いることができないの育成の方が，よりメタであり，より重要である ．のではないか．さらには，子供たちが持っているポ

もし，プログラミングを通して見られる学習態度のテンシャルをチュートリアルのレベルに制限してし変容がほかにも転移するとすれば，それがプログラまうことになっていないだろうか．

ミング学習の必要性を主張する裏付けとなる．この

これらは，HoC に限らず，プログラミング学習のカリキュラムを作成する上で留意すべきことである．これは，単に Scratch にすればよいということではない．極端なことを言えば，Scratch を使って4 択の穴埋め問題を解かせることもできる．
☆6

筆者が開発した「にんげんプログラミング」

とい3）検証が今後の課題である．
参考文献
1） 阿部和広 : 幸せなパソコン教室のために，情報処理，Vol.55,No.6, pp.598-601 (June 2014).
2） 阿部和広 : 子どもの創造的活動と ICT 活用，情報処理，Vol.56,No.4, pp.350-354 (Apr. 2015).
3） Kay, A. : Dynabook とはなにか？，小学生からはじめるわくわくプログラミング，日経 BP，pp.142-149 (2013).
(2015 年 12 月 31 日受付）

うカリキュラムでは，子供たちにパズルを提示して解かせるだけでなく，そのパズル自体も同じ仕組みで作られていることを示し，子供たちがパズルを作ったり，それ以外のものも作れるようにしている．過去の例では，子供たちは与えられた問題を解くことよりも，互☆6☆7

http://www.itdashboard.go.jp/Achievement/

阿部和広 ■ abee@squeakland.jp
青山学院大学社会情報学部客員教授．Etoys と Scratch の日本語版を担当．2003 年度 IPA 認定スーパークリエータ．専門は構築主
義と初等教育におけるプログラミング教育．

http://scratch-ja.org/human

情報処理 Vol.57 No.4 Apr. 2016353