見出し画像

【8x9通信】2021年3月号

こんにちは、ハックです!最近、徐々に春めいてきましたね。
昨年は、お花見も出来なかったですが、今年の桜はせめてゆっくり歩きながら眺めたいものです。3月は受験が終わり、受験勉強のために休会していたハックに戻ってきてくれた生徒さんもたくさんおられます。4月からの新生活が充実した日々になりますように!それでは、3月の【8x9通信】をお届けします。

お知らせ

先日、ハックの各校で任意で受検していただいた「毎日パソコンコンクール」の結果が公表されました。ハックの生徒さんの中には、全国10位以内や、学年別の全国順位が1位(!)や2位の方も大勢おられました(^o^)
日頃、レッスン前やご自宅でタイピングの練習をきちんとしていただいている成果が見事に発揮されました。素晴らしいです!!

画像6

初級Ⅰコース

初級Ⅰ

《レッスン内容》

今月は8x9Craft(ハッククラフト)を使用して「はっくんタワー」というチーム開発レッスンを実施しました。はっくんタワーでは、2〜3人でチームを組みテーマに沿ったタワーを協力してプログラミングで制作していくワークです。
生徒たちは、まずはくじ引きでタワーのテーマを決め、テーマが決まったらチームごとに形や材料などを記した設計図を作っていきます。設計図が完成したら役割を分担して、タワーを作る人、飾りを作る人、階段を作る人などに分かれてプログラミングでタワーを作っていきます。色とりどりの個性的なタワーがたくさん出来上がり、授業の最後に見せ合った時には歓声が起こりました(^▽^)/

《狙い・成果》

①チームコラボレーション
モノづくりは個人制作もあるものの、多くはチームを組むのが一般的です。子供向けプログラミング教材の多くは個人制作を前提にしているため、このワークではプログラミングでチーム開発を経験してもらうことを重点においています。共に設計図を作ることによる認識合わせ、役割を分けることによる一体感を経験してもらいました。
②PDCA
今月は前半回も後半回も同じ内容を実施しています。ただし後半回では、前回の良かったところ、悪かったところ、改善点を踏まえて取り組んでいます。成功も失敗も同じ気づきと捉え、次回にどう活かすかの重要性を学んでもらいました。
②くり返し
高いタワーやらせん階段を作る場合、そのまま作るとプログラミング量が多くなります。そこで"くり返し"を使うとプログラミングを短縮できることを説明し、タワーを作ること(目的)に夢中になっている中で、自然と手段として、プログラミングの考え方を用いてもらうようにしています。

初級Ⅱコース

初級Ⅱ

《レッスン内容》

初級Ⅱクラスは2月、3月の2ヶ月間でScratchを使用し、インベーダーゲームを作成するプログラミングを学んでいます。今回は、完全な自由制作ではなく、まずは与えられた設計書に従ってゲームを作っていきます。次に、仕様変更に対応したプログラムの作成、そして最終的には自由にゲームを作成します。
後半となる今月は、仕様書にそって最初のゲームを修正、そして最終的には自分で設計書、詳細設計書を考えてオリジナルなゲームを作るところまで仕上げます。設計書を作るにあたり、画面に表示されている画像を切り取ってドキュメントに貼り付ける、という技術も習得しました。社会人になると書類作成にとても役立つ技術です。
第3ステージまで完成できた生徒さんの作品は、オリジナルの敵キャラやステージを作ったり、ルールも自分なりにカスタマイズしていたり、面白いゲームが仕上がっていました(*^▽^*)

《狙い・成果》

【狙い】
1.「作る」作業の前後の工程を大切に

「設計(考える)」→「製造(作る)」→「テスト(確認する)」の3つの工程を意識して作品づくりのレッスンをしています。単に完成すれば良いではなく「考えて」から「作る」、作ってから「確認する」ことの重要性を知ってもらうことを意識しています。
2.文章や図で書いてある説明を読んで理解すること
今回は講師の説明を極力減らし意図的に全ての作業内容を設計書に書き起こしました。ドキュメントから作るプログラムの内容を読み取る力を付けてもらうようにしています。
3.仕様通りに作る必要性
モノづくりにおいて、自分が好きなものやセンスを活かして作ることはとても大切です。ただ一方で、どうしても得意なことや経験に頼りすぎると表現力が単調になってしまいがちです。また結果的にそれがニーズと合わず独りよがりになることもありえます。今回は「仕様通りに作る」部分と「自由に創作できる」部分を分けて用意することで柔軟なモノづくり力を養ってもらうようにしています。
【成果】
今回は全ての作業工程に「確認」の時間を厳しめに設定しました。それもあって全体的にやり直し、作り直しをする生徒が少なく、確認の重要性を学んでいただけたと思います。また設計書を読み込むこと、その通りに作ることにも少しずつ順応していってもらっています。


中級Ⅰコース

画像3

《レッスン内容》

中級Ⅰは、ブロックプログラミングからテキストプログラミングに移行するために8x9Craft(言語はJavaScript)を用いてインプット中心に課題を進めています。基本的に個人進捗で課題を進めていますが、途中で習熟度の確認も含めてアウトプット主体のレッスンを実施します。

2月の後半週はアウトプットレッスンを行いました。
アウトプットは、テーマに沿った「自分が作りたいもの」を作るレッスンで、これまでに学んだプログラミングの知識やテクニックを使う・応用する→実践に取り組むことによって、より着実に身につけることを目的としています。
今回のテーマは「丸さ・滑らかさを表現」。
コンピュータは0と1のデジタルを基本としており、ついつい直線・四角のような表現が多くなりがちですが、Minecraftのブロックをドット絵に見立てて、どうやったら丸や滑らかな曲線(ファミコンのPAC-MANやマリオを思い出してください)の表現が出来るのかを研究し、それをプログラムで再現してもらいました。講師は平面的に見て丸や滑らかの部分のあるものが出来上がってくると想像していましたが、球体やドーム型のような建築が出来上がってきた時には、驚きました!
プログラムで滑らかな表現をすることは、ゲームやシステムの動きにも応用(例:スーパーマリオの歩き始め、急に止まった時の滑り、ジャンプの放物線の動作)できることや、またそれらは数学や物理の計算式が使えることなどを伝えました。


《狙い・成果》

※中級Ⅰは初級とは違い、基本的に期間毎の内容の区切りはありませんので、以下は通年の中級Ⅰ自体の狙いと成果となります。
本格的なプログラムをつくるためには、やはりテキストでのプログラミングが必須になってきます。ゲーム・アプリ・業務システム・科学技術研究・ホームページ・その他のIT技術活用やコンピューティングなどのプログラムは、それぞれの用途目的に適した英語ベースのテキストプログラミング言語でプログラミングをします。
中級Ⅰでは、将来、どのようなテキストプログラミング言語を使うことになっても対応できるような、テキストプログラミングの基礎・本質を身につけることを目標にカリキュラムを定めています。
まずは、初級のブロックプログラミングで学習したプログラム3大要素「順次処理」「繰り返し」「条件分岐」を、改めてテキストプログラミングとして学びます。8x9craftならではの「同じ目的を、違うプログラミング言語で実現」を活かして、「あ!英語(テキスト)になったからと言っても、ブロックプログラミングとプログラムの流れは変わらないのか!」という感覚をしっかりと体験します。
その後、さらに本格的なプログラミングの文法や考え方を実践を通して身につけていきますが、淡々と教科書通り的にやっていくのではなく、1つ1つ本質を捉えて問題解決に取り組むカタチになっており、1つの課題に何時間もかかることもありますが「仮説と検証」「Try&Error」をたくさん経験し、根気よく粘り強くやれば必ず問題は解決できることを身につけ、チャレンジすることを恐れない心を育んでもらえるようにしています。また、プログラミングなどの制作作業はチームワークが大事になってくることなどを伝え、コミュニケーションの大事さをプログラミングを通して学びます。これはきっと将来プログラマー以外のお仕事にも活かされていくと考えます。

中級Ⅱコース

画像4

《レッスン内容》​

【柴原クラス】
【オブジェクト指向プログラミング基礎】
数ヶ月に渡り、プログラミングの考え方として様々なものがありますが、現代のプログラミング言語のほとんどに取り入れられている「オブジェクト指向」と呼ばれる考え方に基づいたプログラミング手法を学んでいます。教科書をベースに、1つ1つ技術を学び、また、ゲームの要素で実践して身につけてきております。

《狙い・成果》

【オブジェクト指向プログラミング基礎】
<狙い>
生徒さんが作りたいものは千差万別で使用するプログラミング言語も全員が違うため、各人が個々に新しいプログラミング言語を学習し、制作を進めており、中級Ⅰで培った技術で一定レベルで「動くプログラム」は出来ています。
ですが、さらにプロ向けレベルの「オブジェクト指向」の考え方を理解することにより、個々に新しいプログラミング言語に取り掛かる際の「見よう見まね」「なぜか動いた」と少し理解が浅くなりがちなところを、明確に理解できる素地を作ることを目指しています。
また、もちろん「考え方」は他にも沢山ありますので、まず「オブジェクト指向」の考え方を1つ理解することで、他の考え方が必要になった時でも柔軟に受け入れられるような経験になれば、と考えております。

<成果>
実際に自分が作りたいゲーム(シンプルなもの)を作る過程で、オブジェクト指向の設計やプログラミングを実践し、またオブジェクト指向のメリットであるメンテナンス性の良さも実感いただいているようです。
プログラミングの基礎を前提とした上での、新たな考え方や専門用語もかなりの数を学びましたので、大変だったと思いますが、講師としては個々の生徒さんの理解度も踏まえて引き続きフォローしていきたいと存じます。



【この記事を書いた人】

画像6

大原 真希 / インストラクター及び事務スタッフ
大学卒業後、神戸の企業でシステムエンジニアとして働き、出産を機に退職。その後母親業に専念し、徐々に自宅でのプログラム請負やパートでの事務職を経験する。現在は大学で派遣スタッフとして働く傍ら、「キッズプログラミングスクール8x9(ハック)」でのインストラクター兼事務スタッフとして働く。プログラミング、データ加工、業務効率化が好き。Excel、SpreadSheetが得意分野。

この記事が参加している募集

オープン学級通信

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