僕は発展途上技術者

うちの子にプログラミングを教えたい、でもどこからはじめればいいの?に答える

うちの子にプログラミングを教えたい、でもどこからはじめればいいの?という質問をもらったので答えます。

まず第一歩として、一人一台、買い与えるでもいいし、親のおさがりでもいいからパソコン、それもノートパソコン、を与えるのが大事だと思っています。

親のパソコンを貸すではダメで、それだと、これは触っちゃダメとか、新しくソフトはインストールしちゃダメねとか、いろいろ制限を設けてしまいます。好奇心のおもむくままにいろいろやってみたいというこどもにとって、そうした制限はうざったいはず、すぐに使うのをやめてしまうでしょう。

一度与えたあとは、もう好きなように使っていいよと宣言するのが大事。壁紙やスクリーンセーバーを自分仕様に変えたり、僕がIT系の勉強会に参加したときなどにもらってくる会社やWebサービスのロゴのステッカーをあげると、喜んでペタペタ貼っている。そうすることでこれは自分のものなんだと思わせるのが大切です。

この考え方はOLPCの自己所有原則に通じるとのこと。(@abee2 さんのツイートより)

じゃあ何歳から買ってあげたらいいの?という話になります。(@bluerabbit777jp さんの質問より)

こどもがプログラミングを始めるときスクラッチが断然おススメという話は、それだけで長くなってしまうので、また別の機会に書くとして、たとえばそのスクラッチの対象年齢はこちらを参照すると8歳からとなっています。

こどもたちが参加し、僕もお手伝いさせてもらっているこどもプログラミングサークル'スクラッチ'のワークショップでも基本3年生からとなっています。

対象年齢なんか意味がない、と思い、下の子には6歳から与えてみましたが、最近この8-9歳からという点にはやはり意味があるんだなと思えてきました。長男はいま10歳ですが、ほっておいても自分でプログラミングをします。次男は7歳ですが、ほっておくとスクラッチのサイトでみつけてきたゲームをひたすらやってしまいます。

おそらく8-9歳あたりから、こいつの仕組みはどうなっているんだろう?もっと知りたい、という思いが強くなってくるんだと思います。まだそれほど多くはないですが、何回かワークショップで手伝ってきて、他の子達も見てきた経験からの印象です。なので、あまり早いうちから与えるのもどうなのかな?と思います。

今日はここまで。質問やコメントがあれば、Twitterで@jishihaあてにお願いします。そうしていただいた質問などにも答える形で続きを書いていこうと思います。

Make: Tokyo Meeting 07 に親子で参加してきました

Make: Tokyo Meeting 07 に親子で参加してきました。

名札が3つ。僕とこどもたち二人の分です。


こどもたちは Scratch プログラマーとして、つまり参加と言っても出展側として参加です。MAKER とは、つくる側のひと、世界を少しでも変えられる側、ととらえています。誇らしいバッジです。

MITが開発した教育用プログラミング環境Scratch(スクラッチ)とKinectをつなげた例として10歳長男がつくったKinect Gundamを展示していました。


こどもプログラミングサークル「スクラッチ」のブースと隣接して出展させてもらいました。お馴染みのメンバーでスクラッチ談義。


ペアプロしたり、


黙々と自分の作品に修正いれてたり。


なぜか、登壇させられ、インタビューを受けたりしていました。プログラミングに関して、学校や家庭での創作活動について、とか。


90歳を越える祖母が見に来てくれ、7歳の息子(祖母にとっては曾孫です)からスクラッチとは何かの説明を受けています。学ぶのに年齢は関係ない。


Make は回を追うごとに盛況なようで、訪れる人がとぎれることがなく、出展側だと意外と他のブースを観にいくことができませんでした。

それでもなんとか時間をみつけて別会場のコトリトの皆さんのブースをみてきました。


Android から遠隔操作で鳩に餌やりしたり扇風機まわしたり、ライトをつけてあげたり。

会場をまわってみると、こどもの心をつかむ展示が目白押しです。

心臓を散歩させるこども。うーむ、なかなかシュールです。


ブースを訪れた大人たちの誰もが、「ええ!こどもがプログラミングできちゃうの!」という印象を持ったようです。

僕自身も多少誇張したものいいをしたり、このブログの書き方もそうですが、プログラムができる特殊能力をもった少年達みたいな扱いをしてしまって、見世物になってしまいそうになるのを反省するときも多々あります。

しかし、本質はそこじゃないんだということに、Makeおよびこどもプログラミングサークルスクラッチの感想を書いてくださっている以下のブログエントリーを読んで、気付かされました。

引用を追記しました

「子供にプログラムを教える意味はあるのか」という疑問に対して、それを将来の技術者の養成ではなく、「学習方法の獲得機会である」と説明するのがうろ覚えながらパパートの説いたことだったように思います。このサークルがどのような方針なのか私には知るよしもありませんが、指導者である大人たちが、子供たちに「プログラミングの仕方だけ教えればいい」と考えているわけではないことはよくわかりました。彼らはMTMに子供たちをつれてきて、そこで、知らない人に技術や活動の説明をするという経験を積ませています

見ず知らずの大人に話しかけ、上手に説明していることに驚かれているようですが、もちろん彼らも始めからそんなにうまくできたわけではありません。「なにやってるんだろう?と眺めている人がいたら、こっちから話しかけるんだよ」というアドバイスをMake初日にもらったのかもしれないし、そうやって話しかけるまわりの大人かおなじメンバーのこどもをみて真似しようと思ったのかもしれません。とにかくそういう場数を踏んでいくことで、さまざまなことを学んでいるのです。

だから、たとえばフリーマーケットに参加してものを売るというのでもいいのです。そういう学習のきっかけを数多く体験することが大切なんだと思います。

こどもプログラミングサークルスクラッチがその大切な機会のひとつになっていることは確かだし、Makeに参加したことは、こどもにも僕にとっても貴重な体験となりました。

次回のMakeも必ず出展することを固く決意しました。

Make: Tokyo Meeting 07 出展: スクラッチを使えばこどもでも Kinect を使ったプログラミングができる

12月3日(土)、4日(日)、東京工業大学で開催される、Make: Tokyo Meeting 07 (MTM07) に親子で出展します。

教育用プログラミング言語の Scratch でこどもたちがつくった作品(長男小4、次男小1)を展示します。

たとえば長男が作った Kinect Gundam、Kinect の前で自分が取ったポーズの通りにガンダムを動かします。脚を上げるとちゃんと「グワシーーン」という効果音が。PC が非力で多少処理落ちしてしまってカクカクしていますが、雰囲気は伝わるかと思います。


場所は、体育館内、こどもプログラミングサークル「スクラッチ」の方々が集まるスクラッチ島の一角です。

スクラッチ島では他にもスクラッチに関わる様々な展示やプレゼンテーション、ワークショップもあるので、スクラッチをやってみたいという方は、この機会に訪れてみてはいかがでしょうか?

以下はプログラミングサークル「スクラッチ」からの案内です。

» Make: Tokyo Meeting 07 出展のご案内 « こどもプログラミングサークル‘スクラッチ’

Windows XP 環境で Scratch(スクラッチ)と Kinect(キネクト)センサーをつなげる

Scratch(スクラッチ)と Kinect(キネクト)センサーをつなげるととても楽しい。

どんな楽しいことができるかは、貼りつけた以下の動画を見てもらえばわかると思います。

Scratch and Kinect from Stephen Howell on Vimeo.

つなげるための準備が、情報が少し古いのと英語中心というのもあって、わかりにくかったので整理して紹介したいと思います。

また、紹介するのは Windows XP 環境上での方法です。Mac OS 上でセットアップする方法はまだ情報がありませんでした。Windows 7 上ですと、Windows XP よりも楽にセットアップできるようです。(下記リンク先参照)

≫ Kinect 2 Scratch | Free software for hooking Scratch up to Kinect


1. Kinect を用意する

まず言わずもがなかもしれませんが、準備するものとして Kinect センサーが必要です。

Xbox はなくてもセンサーだけ購入可能です。僕は Amazon で買いました。

Xbox 360 Kinect センサー
Xbox 360 Kinect センサー
posted with amazlet at 11.10.20
マイクロソフト (2010-11-20)
売り上げランキング: 201



Kinect と Scratch をつなげるには、OpenNI2Scratch というプログラムを使うのですが、これを動かすためには、いくつかのミドルウェアやドライバをインストールする必要があります。

2. OpenNI をインストールする

OpenNI のホームページ http://www.openni.org/ に行き、上部のメニューより Downloads > OpenNI Modules を選びます。

以下のように OpenNI Binaries、Unstable、OpenNI Unstable Build for Windows x86(32-bit) v1.3.4.3 Development Edition を選択しダウンロードした OpenNI をインストールします。

OpenNI - OpenNI > Downloads > OpenNI Modules

3. Kinect sensor plugin をインストールする

https://github.com/avin2/SensorKinect/tree/unstable/Bin より SensorKinect-Win-OpenSource32-5.0.3.4.msi をダウンロード、インストールします。

4. NITE をインストールする

http://kinmob.googlecode.com/files/NITE-Win32-1.3.0.17.exe をダウンロード、インストールします。

インストール途中でライセンスキーを聞かれるので

0KOIk2JeIBYClPWVnMoRKn5cdY4=

を入力します。

5. OpenNI2Scratch をインストールする

OpenNI2Scratch をダウンロード、インストールします。

6. Kinect をつなげる

ここまで準備ができたら、Kinect を Windows XP マシンにつなげてみます。

USB ケーブルを接続し、Kinect Motor、Kinect Motor、Kinect Audio といったドライバが順次インストールされれば成功です。

7. OpenNI2Scratch を起動する

最後のステップです。

OpenNI2Scratch(ファイル名は OpenNI2ScratchGUI7.exe)を起動します。

ここまでの手順がすべてうまくいっていたら下のような画面が表示されるので、Launch Kinect のボタンをクリックします。

プレビュー

Kinect found - please stand in the calibration pose というメッセージが現れたら、calibration ポーズをセンサーの前でとって下さい。

Calibration complete, tracking user now と出たら成功です。

Scratch を起動し、Kinect とつなげて遊べる Scratch のサンプルプロジェクト(http://scratch.mit.edu/users/SHowell)の中から一つを選んで開いたら、Connect to Scratch ボタンをクリックします。


以上、結構煩雑なのですが、ひとつひとつ確実にやっていけばうまくいくと思います。

情報が更新されて、リンクが切れたりしてしまっている場合は、以下の情報元をたどっていけば新しい情報が得られるかもしれません。

≫ Stephen Howell's Mind

≫ Scratch Forums / Scratch and the Kinect

Recent Entries

Recent Comments

Tags

Archives

Admin