見出し画像

【8x9通信】2021年8月号

こんにちは、ハックです!日が短くなってきましたね。今年は秋の行事を例年通り出来ることを期待しているのですが、どうなるでしょう・・・。
さて、8月の【8x9通信】をお届けします!


お知らせ


緊急事態宣言発令の延長に伴い、8x9での取り組みについても継続しております。詳細は下記サイトをご確認くださいますよう、よろしくお願いいたします。https://sites.google.com/view/soe202101/

初級Ⅰコース

画像2


《レッスン内容》

今月はIchigoJam(イチゴジャム)のレッスンです。
IchigoJamは、BASIC(ベーシック)というプログラミング言語で動く「子ども向け」のボードコンピュータです。レッスンではコーディング作業に集中させるため「IchigoJam web」というインターネット上の実行画面でプログラミングしました。
前半週は、画面いっぱいの「ゴミ」を矢印キーで人型キャラを動かして消していく「おそうじゲーム」、後半週は、円の形に現れる点をタイミングよく人型キャラをジャンプさせる「なわとびゲーム」を作成しました。
レッスンではプログラムをいったん完成させると、先生から改造のヒントを伝えて自分なりに改造をしていきます。シンプルな操作で子どもがやり込むタイプのゲームを用意しましたので、プログラミングにもゲームにも熱中して取り組んでいました。

《狙い・成果》

今回のIchigoJamで使われるBASIC(ベーシック)は、テキスト(文字)でプログラミングをします。初級Ⅰコースでは本来、ビジュアル(またはブロック)・プログラミングと呼ばれるScratch8x9Craftを主にレッスンで採用しています(8x9Craftはもちろんテキストでプログラミング可能です)。
ビジュアル・プログラミングは、プログラミングの動きや流れを捉えやすく、初心者には向いていますが、将来、高校・大学・社会人になるにつれ使われなくなり、テキストのプログラミングが必要とされるようになります。
テキストのプログラムは、1文字間違うだけでまったく動かなくなる等が普通に起こります。エラーのメッセージは基本的に英語です。テキストのプログラミングは、小・中学校では先生のサポートもままなりません。
ハックでは小・中学生からテキストのプログラミングを経験させ「プログラムを打ち込んでは実行し・エラーをデバッグする」という一連の流れを楽しみながら行えるようにしています。
今回も、自分で作ったゲームに熱中してハイスコアを自慢する子やプログラムを改造して他にはないゲームを作り出す子たちばかりになりました。

初級Ⅱコース

画像3

《レッスン内容》

初級Ⅱクラスは8月、9月の2ヶ月間で8x9Craftを使用し、はっくんで土地開発するプログラミングを学んでいます。
前半である8月は「プログラミング建築士 修行編」と銘打ち、本テーマで必要な「繰り返し」「関数」「アイディア探しのためのWeb検索」の方法を修行形式で学びます。
後半にあたる9月では「自由開発編」としてGoogleスライド上で自身の設計、スケジュール管理、テーマに関する想いなどを記入し、講師にレビューしてもらった生徒からプログラミングで地形やオブジェクトを制作していきます。

《狙い・成果》

【狙い】
「修行編」
 ・ 実践を通して繰り返し(反復処理)を使用する
 ・ 実践を通して関数を使用する
 ・ 実践を通してWeb検索を活用する
「自由開発編」
 ・ テーマ選択と選択理由を自分なりに必ず考える
 ・ 設計・スケジュール管理等でデジタルツール(Googleスライド)を使用する

今回「修行編」と称してプログラミングで習得してほしい内容を課題に盛り込み、それらを意識せず実践で活用できる場として「自由開発編」として2段構えのカリキュラムとなっています。「修行編」で使用する項目は「自由開発編」で利用するであろう仕組みや方法を洗い出して準備しているので、課題で練習した内容がそのままスムーズに作品制作で活用できます。

【成果】
「修行編」をクリアしてプログラミング建築士と認められないと「自由開発編」には進めない!というゲーミフィケーション的な進行を取ることで生徒達は真剣に「修行編」の課題を進めていました。
結果的に「修行編」の課題で学んだ「繰り返し」「関数」といったプログラミングの仕組みを自由製作時にそのまま活かすことができていたので、自由に土地開発をするという目的のためにプログラミングの手段を覚えるという自然なプログラミング学習となりました。

また自分が開発する土地に対しても必ず作成理由をGoogleスライド上に文章として記入し講師に説明するプロセスを含んだことで、ただ与えられたテーマをこなすだけでなく物事を自分事に捉えて考える機会も経験いただけたと思います。


中級Ⅰコース

《レッスン内容》

中級Ⅰは、ブロックプログラミングからテキストプログラミングに移行するために8x9Craft(言語はJavaScript)を用いてインプット中心に課題を進めています。偶数月である8月は、習熟度の確認も含めてアウトプット主体のレッスンを実施しました。
1)グループでプレイヤーを邪魔するステージを作る「はっくん攻城戦」
2)お題の建造物をどれだけ効率的に作れるか「はっくんスプリント」
3)簡単なゲーム作成のチュートリアル「MakeCode Arcade」 
4)建造物を設計して作る「建築ビルド」
中級Ⅰのレッスンでは黙々とプログラミングする時間が比較的多いので、偶数月ではグループワークを取り入れたレッスンも行います。
初級から引き続き、チームで協力して成果物を作り上げる経験を蓄えながら自分のやりたいことをテキストでプログラミングできるようにレッスンを行います。


《狙い・成果》

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

中級Ⅱコース

《レッスン内容》

【辻クラス】
私自身、数学が好きなので、プログラミングと関係性の深い、機械学習(AI)、数学・物理・統計・データ分析などのレッスンを実施しています。言語は人工知能、機械学習で多く使用されるPython言語を使用しています。

中級2クラスでは、生徒さんのレベルと、やりたいことに合わせて授業を進めています。
<数学プログラミング>
三角関数、複素数をpythonで実装して、確認しました。
学校でやっている数学を、別の見方で、学ぶことができています。
上の動画を参照してください。
<AI (Deep Learning)>
「畳み込み」「プーリング」「ドロップアウト」などの概念を学びました。
サンプルプログラムをステップ実行して、動作を確認しました
<Webアプリ作成>

ipアドレスの読み方、サーバ、クライアント、インターネットなどの仕組みを学びました。また、ネットワークコマンドを叩いて、Googleや、yahoo!のサイトに接続して、ネットワークの仕組みを学びました。
また別の生徒さんは、BootstrapでCSSフレームワークについて学びました。
《狙い・成果》
【狙い】
・時代が変わっても役に立つ、基礎となる技術を修得する
・プログラミングを通して数学、物理の理解を深め、より幅の広い開発ができる事を目指す
・プログラミング、数学の面白さを知ってもらう
【成果】
・自分で学んで、自分で調べて、自分で解決する力を身につける
・パターンを見抜く力がつき、そこから応用する力に発展させる
・数学に関しては、生徒から次のような声をきいています。
  「学校の数学授業の予習になった」
  「数学が目に見える形になると、おもしろい」
  「数学が学校以外でも役立つことに気づいた」


【この記事を書いた人】

画像1

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


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