こんにちは!
キッズプログラミング教室「イフキッズアカデミー」
池ちゃん先生です!
※クラス分け
【火1】・・・火曜日16:00〜17:30
【火2】・・・火曜日17:40〜19:10
【木1】・・・木曜日16:00〜17:30
【木2】・・・木曜日17:40〜19:10
【土】・・・土曜日10:00〜11:30
【日】・・・日曜日10:00〜11:30
今回も土曜日のレッスンの続きです。
先生はあきちゃん先生、まなちゃん先生、にしなみ先生、なべ先生です。
では、にしなみ先生よろしくお願いいたします。
こんにちは、にしなみ先生です!
最近ちょっと気温下がってきましたね。
私は秋~冬が最も好きな季節なので、「やっと夏が終わるのかあ」という感じです。
けど、その秋も大抵は台風で予定が潰されちゃうんですけどね…。
それはさておき、報告に入りましょう。
今日の担当は、Hくん(中1)、Hくん(中2)、Hちゃん(小3)、Kくん(小6)、Aくん(小4)です。
Hくん(中1)の今日の課題は『光の屈折』をテーマにしたもの。
『ライトから出た光が鏡に当てて反射させ、センサーに当たるとLEDが光る』というのを表すアプリの作成です。
いつもどおり黙々と順調にScratchで作成を勧めていたHくんですが、最後に確認したところ、
『うまく何度も反射させるのが難しい』という理由で、鏡で光を反射するのではなく、
鏡を置く位置に別のライトが置かれており、
必ず決まった方向にしか光が進まないようになっていました。
課題には『自由な角度から光を出し、複数の鏡に反射させてうまくLEDに当てる』という仕様になっているので、
残念ながらこれではOKを出すことはできません。(本質が合っていれば特に問題はないのですが、今回は本質が変わってしまっていたので・・・)
お仕事でも「こっちの方が作りやすいから…」「こっちの方が簡単だから…」という理由で、要求されていることを変更して作ってしまうと怒られてしまいます。
こういう場合はお客さんに「この機能をこういう仕様に変更してもよいか?」を尋ね、OKが出たら仕様変更として実装する…という流れになります。
Hくん残念…次のときにがんばって実装しよう。
Hくん(中2)とは初めてお会いした…というか、私がプロフェッショナルコースの子を担当するのが初めてです。(まぁ、普段のレッスンが平日なので。(池))
プロフェッショナルコースは実際に私たちがお仕事で使用している開発用アプリ『Visual Studio』で、 プログラムの基礎を学ぶコースです。
考え方自体はロジカルコースのScratchと変わらないのですが、書いているプログラムや出てくる用語はお仕事寄りになります。
Hくんは現在テキストに沿ってプログラムの書き方を学んでいる途中。
今回、質問を受けたのが、
「配列についている Length ってなんですか?」
というもの。
配列というのはScratchでいうリストと似たようなものです。
質問されたテキストの部分を見てみると、繰り返しの回数に『配列.Length』と指定しています。
こう書くと、配列の長さ(リストに入っている変数の個数と同じ意味)を自動で測って教えてくれます。
こういう便利な機能が実際のプログラムにはたくさんありますが、私たちもすべて覚えているわけではありません。
見たことがない機能や「こういう機能ないかなー」ということに直面したときはGoogleで検索して調べています。
プログラマーとして生きていく上では『検索力』も重要になるわけですね。
これでHくんも一つ便利な機能を覚えてくれました。
こういう機能はたくさんあるから、ちょっとずつ覚えていってね。
次はHちゃん(小3)
Hちゃんの課題はScratchで『九九をランダムに表示する』ゲーム。
まだまだ操作には慣れていないだろうから、
『今日は掛け算の式をランダムに表示するところまで作れれば十分かな…』
と思っていたのですが、
予想に反してHちゃんはすいすいと進めていき、
必要な画像の準備、九九の表示、
実際にキーボードで掛け算の答えを入力させるところまで作り上げました!
次回で『九九の答え合わせ』を含む課題の完成もできそうですね。
もう少しだ。頑張ってね!
次はKくん(小6)。
Kくんの課題はScratchで『雷』のシミュレーションを作ります。
雷が表示されてから0~10秒後に落雷音を鳴らし、音の速さを使った計算で雷が落ちた場所までの距離を表示するもの。
Kくんは特に詰まるところもなく最後まで解いたのですが、最後に1箇所だけ詰まったところが・・・
『XXXメートル』と表示すべきところで『XXX』と、数字しか表示されていないようになっていました。
計算結果を変数に保存しているのですが、数値を表す変数と文字を表す『メートル』をくっつけて表示する方法が解決出来ず、タイムアップ。
実際のプログラミングでも、変数の中に入っているデータが『数値』なのか『文字列』なのか、はたまた別のなにかなのか…という情報は非常に重要です。
『1 + 1』はふつう『2』ですが、文字同士の場合は『11』となります。
次回はScratchで文字をくっつけるためにはどう組み立てればよいのか…を探すところから。
ちゃんと用意されているから、頑張って探してみて!
最後はAくん(4年生)
Aくんの課題はScratchで『クレーンゲーム』を作るです。
ゲームセンターにあるクレーンゲームを再現してもらうので、
景品をキャッチして取り出し口まで運んでいく必要があるのですが・・・
Aくんはすべて『開始ボタンが押されたら』ブロックの後に処理をくっつけて書いていました。
これでも解けなくはないのですが、キーボードのボタンが押されたときの処理やアームがクレーンに触れたとき…などの各処理が『もし~なら』を延々とくっつけて書いているので、非常にながーい処理となっています。
そのせいか質問するときも「えーっと…あった、ここの…えーっと…」と、自分でも質問でどこを見ればいいのかわからなくなってしまっていました。
お仕事ではたいてい一人で開発するのではなく、一つのシステムを複数人で作り上げます。
他人が書いた処理を見る機会は非常に多く、その処理が読みづらい・理解しづらい処理だと、頭で理解するのに時間と労力がかかってしまいます。
それが自分でも理解しづらいとなってしまうと、不具合が発生した際に直せる人がいなくなってしまいます…!
『動く処理』はもちろんのこと、『読みやすい処理』『簡単な処理』を書けるようになることも、プログラマーには要求されるスキルのひとつなのです。
Aくん、次回はいろいろな処理の整理から始めましょうね。
わたしからの報告は以上です!
またお会いしましょうね。
にしなみ先生ありがとうございました。
ところどころ、私たちのお仕事に絡めて解説してくれましたが、レッスンでは実際のお仕事に繋がるようなことも指導しています。今の時点ではなぜそんなことを先生が言っているのか、なぜそんな課題なのかというところはピンとこないかもしれませんが、将来、そういえば、習ったなぁと思ってもらえたらうれしいです。
次回のレポートもお楽しみに!
無料体験授業実施中!
毎週火曜日 16:00~17:30、17:40~19:10
毎週木曜日 16:00~17:30、17:40~19:10
毎週土曜日 10:00~11:30、11:40~13:10
※日曜日も臨時で実施していることがあります
お気軽にお問い合わせください
お申し込み・お問い合わせは、こちら。
お電話でも受け付けております。
03-6806-6861
(平日10:00~18:00)
イフキッズLINE@お友だち募集中!
新着授業レポートの通知、無料説明会やイベントの案内など、
耳よりな情報を配信中です。
加えて、お友だち登録されている方には、
イベント参加費の割引、
入会の際の割引、プレゼントなどの特典も!