プログラミングで何ができるんですか

プログラミングではどんなことができますかと説明会で聞かれることがあります。


最初に問われたときその答えに学生は一瞬止まっていました。


その答えは何でもできる、できないことは無い、だそうです。


できない場合、それにはレベルがあって、
① 今の時代ではそれはまだ技術的に無理、誰も成しえていない
② やっている人がおり可能だけれども自分の技術が足りなくてできない
③ 時間と労力さえ無限に費やせばできないこともない、けれども今の生活の中で自分はそれにそこまではかけられないので無理
とのことでした。


できないことはない、プログラミング。
それを使って何をしたいかがじつは一番大事なところです。


プログラミングは目的ではなくて手段です。
その先にどんなものを実現したいか、そのためにプログラミングを活用することができるようになってほしい。

プログラミングはこうやったらこう動きますよ、をただ教えるのではプログラミング教室ではあるかもしれないけれどそれはSTEAM教育ではないと考えます。

STREAMではそんな教え方はしません。


もちろん初心者はプログラミングが何か、それによりどんなものができるかさえわからないので、まずはブロックプログラミングから、プログラミングの基本のきを学ぶより先にいきなりゲームを作ることができる教材から入ります。それを楽しみながらやることにより、自然に難しいことも身についていきます。

プログラミングが好きな学生が、プログラミングを嫌いになってほしくない、好きになってほしい、一緒にやりたいという思いで最初に何を持ってくるか、子どもたちに創意工夫の余地を残して(拡張性という言葉を彼らはよく使います)教材を作っています。

 コミュニティの中のチャットでは学生たちの先品を発表したり、子どもたちがやることをお互いに見せながらこういうこともできるよ、を伝えて、こどもたちのやりたい気持ちを引き出します。

日々の教室の発表やエクスプレッション作品発表会も自分のやってきたことを表現する場であり、かつ、誰かの表現から自分のこれからの作品の構想に関わる、お互いに影響を与え合う場です。


いつかその子がやりたいものが出てきたときには、すぐに、そのタイミングでそこに行くための道筋を助ける。

チラシに「作るを学べ」と書いてありますが、この教室では、技術的にプログラミングを教えることはもちろん、本人の内発的動機、作りたいという気持ちをはぐくむ。そしてどの実現を助ける。

その仕掛けが随所にある、STREAMはそういう教室です。

ブロック教材からPythonに一旦進んだ生徒さんが学生が開発したおみくじ機能を自分も作りたい、と思い立ち、今自分のできる中でやるにはブロックが早いとブロック教材に戻りました。彼はかっこいいから早くC言語にも行きたいと言っていたのですが、いまこれを作るためにの選択を自分でし、それを学生が支えていることは素晴らしいなと思います。

また、自分でC言語を学んでいる生徒さんにわざわざPythonを教えることもないので、この生徒さんにこれを教えてあげるといいかもと学生が教材を作り、オブジェクト指向、クラスを教えたところ、それを使いこなしている生徒さんもいます。

例外中の例外の生徒さんのご紹介を先にしましたが、ブロックプログラミングでこういうことができる、を楽しんだお子さんは難しいけど挑戦したいとプログラミング言語習得コースに自分のペースで移っている人が大半です。

全くの初心者、六年生から始めた生徒さんが一年たって、Pythonでギットハブで学生と共にハッカソンに出てプロダクトを作り始めました。

教育の結果が出るのは時間がかかり、後にならないとあれが良かったのかどうか評価することはその時にはできないこともありますが、わくわくする学びを重ねて、一年たってこのような生徒さんの姿が見られること、この方法でこの教材で間違いはなかったなと生徒さんの姿で見せていただけていることをとても喜んでいます。

この記事が気に入ったらサポートをしてみませんか?