パイソンを使ってクリエイティブな作品づくりにチャレンジします

コースの内容

f:id:bergerejp:20131231205930j:plain

 

「クリエイティブプログラミング」は聞き慣れない言葉だと思います。

クリエイティブな人と言うと、デザインや音楽などの芸術的な才能やセンスを持った人の事を一般的に指します。昔であればレオナルド・ダ・ビンチ、モーツアルトピカソ、現代ではウォルト・ディズニービートルズなど、クリエイティブな人たちが時代や文化を創ってきました。しかし、今では「クリエイティブ」の持つ意味は拡大し、芸術以外の分野で重要視されてきています。それまでの才能やセンスといった先天的な能力から、もっと身近で習得しうるスキルとしての「クリエイティブ」です。工学や化学の研究者から、プログラマー、営業、広報といった職業まで、これまで「クリエイティブ」とは無縁と考えられてきた人たちにも求められるようになっています。

「クリエイティブ」の意味は、1999年にイギリスのNACCCE(National Advisory Committee on Creative Cultural Education)が発表したレポートにわかりやすく書かれています。

■想像力を使うこと

自分の感覚に頼るのではなく、そこを脱した考え方からアイデアを生み出すこと

■独創的であること

今までに発想したことがないこと、今まで誰もしたことがないことを目指すこと

■知識と技術を活用できること

イデアを有効的に実現させるために、十分な知識や技術を活用すること

■目的を満たせること

問題を解決したり、情報を伝えたりなど必要とされている目的を果たすこと

■自身でチェックできること

自分のクリエイティブ力を維持できるように、常に自分の生み出すアイデアを客観的に評価すること

クリエイティブプログラミングのコースは、生徒たちがこの「クリエイティブ」な力を身につけることを狙いとしています。

具体的には、生徒の身近なテーマを選びプログラミングでどんなことができるかを実践的に学びます。またアプリケーションを開発をするには、パイソン以外に様々なツール(ライブラリーといいます)を使う必要があります。用途に応じてツール使い分けることが重要であることをあわせて学習します。このコースを学ぶことによって生徒自らが発想したことをプログラミングで創造できるようになります。

生徒の身近なテーマとしては一般的にゲームと学校の教材を考えることができます。ゲームに関してはゲームプログラミングコースをすでにリリースしています。今回は学校の教材に関係する8つのテーマを用意しました。生徒は興味のあるテーマを個別に選択してその分野をさらに深く極めていく道もありますし、複数のテーマを学習して多くの道具を身につけた後に自分がやってみたい分野を選んで進むこともできます。

クリエイティブプログラミングのコースは、しばらくスクールだけで提供します。時期をみてオンライン学習でも提供する予定にしています。

 

クラスの内容

クリエイティブプログラミングのテーマとして用意したのは次の8テーマです。

■世界地図と統計

世界の人口や人口密度などの統計データを読み込、データの値によって世界地図の色を塗り分ける方法を学びます。できあがった図をコロプレス図と言います。色々な統計データを視覚的に表現することによって、データから新たな気づきを得ることができます。

■確率とモンテカルロ法

サイコロの1の目が出る確率は6分の1ですが、これはサイコロを数多く投げると6分の1に近づくという意味です。同じようにパソコンの中でダーツを1万回(もっと投げてもいいのですが時間がかかるので1万回にしています)投げるシミュレーションをして円周率の近似値を求めます。投げる回数を増やすと、次第に円周率に近づいてくことを視覚的に学びます。このシミュレーションの考え方をモンテカルロ法といいます。

■文章解析

小説や新聞の文章の長さの分布や、漢字やひらがなの比率を求めて、文章の読みやすさなどを解析してグラフで表現することを学びます。自分の文章の漢字とひらがなの比率を黄金比率と比べて、読みやすさを評価することもできます。文章を分解して解析するテキストマイニングの入門です。

■画像解析

モナリザの画像を使ってモザイクを徐々にクリアにしていくモザイクゲームをつくります。モノクロ・反転・拡大・縮小・フィルターなどの画像処理も学習して、写真やイラストなどの画像を自由に加工することができるようになります。

■月の満ち欠け

夜空を見上げて月の満ち欠けがなぜ発生するかを考えたことは、誰にでもあると思います。月が地球の周りを回る軌道と、地球からの月の見え方をアニメーションで連動させて、月の満ち欠けの理由を調べます。

フラクタル

部分を拡大すると全体と同じように見える形は、樹木や雲、海岸線などの自然界のいたるところに見られます。これらをフラクタルと呼びます。このフラクタルをパズル感覚で作成します。教科というよりはプログラミングに近いテーマですが美術のデザインとも言えます。

■無限に続く円周率

円周率は、なぜ無限に連続するかをあまり考えたことがないかもしれませんが、プログラムを使うと視覚的に理解することができます。正6角形からはじめて正7角形,正8角形・・・と順に大きくして、円とは外接多角形と内接多角形に挟まれる無限正多角形であるという考え方に気づきます。生徒たちはこのアニメーションによって、円周率をはじめて理解できるかもしれません。

■色の三原色

色の三原色は、RGB(赤Red・緑Green・青Blue)からなり、コンピュターの世界ではRGBを0から255の数値で表現することを視覚的に学びます。0から順に数値を変えて、3原色の色や、その3色を混ぜた色の変化をアニメーションを使って調べます。3原色を混ぜた色が、最後に白色になることを確認できます。

 

まとめ

以上の8個のテーマは、国語、算数、社会、理科、美術の教科に関連しています。音楽のテーマも考えたのですがパソコンによっては音色など正確に音を出すことができないので今回のレッスンには取り上げていません。

クリエイティブプログラミングのレッスンは身近な教材から生徒が興味を持ちそうなテーマを選定しましたが、これらから発想を広げることによって生徒自らの力で色々なテーマを見つけ出すことができると思います。
そして生徒たちは自ら選んだテーマを苦戦しながらプログラミングをすることによって「クリエイティブ」な体験をすることができるものと考えています。

前の投稿

www.bergere-blog.jp