![見出し画像](https://assets.st-note.com/production/uploads/images/45929678/rectangle_large_type_2_cc86faefde78296e9e943706ba6f64db.png?width=1200)
【8x9通信】2021年2月号
こんにちは、ハックです!今年は暖かいバレンタインデーでしたね!
我が家は今年は二人とも受験生なので、娘の友チョコづくりもなく、息子ももらってくることなく、普通の日曜日でした(;^_^)
さて、2月の【8x9通信】をお届けします!
お知らせ
緊急事態宣言発令の延長に伴い、8x9での取り組みについても継続しております。詳細は下記サイトをご確認くださいますよう、よろしくお願いいたします。https://sites.google.com/view/soe202101/
初級Ⅰコース
《レッスン内容》
今月はIchigoJam(イチゴジャム)のレッスンです。
IchigoJamは、BASIC(ベーシック)というプログラミング言語で動く「子ども向け」のマイコンボードです。教室には実機もあり、ディスプレイや大きなボタンと接続して実際にゲームを楽しんでもらいました(^▽^)
生徒たちは、「IchigoJam web」というインターネット上の実行画面でプログラミングをします。Scratchや8x9Craftとは違い、コード(文字)でプログラミングをします(8x9Craftはもちろんコードでもプログラミング可能)。はじめは実行画面の使い方からていねいにレッスンしていきます。90分のレッスンで、10行足らずのプログラミングコードを入力し、ゲームが出来るところまでみんな完成しました!素晴らしいですね。
早い生徒さんは、プログラムの内容を理解して、自分なりに改造をしていきます。最後に改めてプレイしたデカボタンでの100mダッシュゲームは大いに盛り上がりました(^▽^)
《狙い・成果》
初級Ⅰではブロック型のプログラミング・ツールなどを使うことが多いのですが、それだけでは将来扱うプログラミング言語に対応できません。ハックでは子どもでもしっかり身につくテキスト型言語である「BASIC(ベーシック)」(IchigoJam BASIC)を適宜用いています。
IchigoJam BASICは、文字はすべて英大文字で、キーボードに刻印されている文字そのままをタイプするだけなので、打ち込む際にも苦になりません。
「BASIC(ベーシック)」は命令がシンプルで、なおかつ行番号による分岐・くり返しで、初学者でもプログラムの構造が見えやすく改造しやすい利点があります。
レッスンでは、数行ごとに命令文を打ち込んでは確認するという「入力ー実行ーデバッグ」をくり返して完成させる方式で、操作が早い子も、マイペースな子も思い思いにプログラミングしていきます。
自分で作ったゲームをプレイするのはとても楽しく、次々と完成していく子どもたちから歓声が上がります。余裕があれば改造をするよう、ヒントを与えて更にプログラミングに取り組む子がほとんどです。
このレッスンは、自分が作ったプログラムで遊び・学ぶことができるようになることが狙いです。しかも、文字によるプログラミングを経験し、自分なりにデバッグし改良を加える本格的なプログラミングの流れを意識することができます。
初級Ⅱコース
《レッスン内容》
初級Ⅱクラスは2月、3月の2ヶ月間でScratchを使用し、インベーダーゲームを作成するプログラミングを学んでいます。今回は、完全な自由制作ではなく、まずは与えられた設計書に従ってゲームを作っていきます。次に、仕様変更に対応したプログラムの作成、そして最終的には自由にゲームを作成します。
前半となる今月は、まずは仕様書通りにつくるプログラミングから始めています。要件、仕様書、設計書、詳細設計書など、お仕事でする開発と同じ用語、同じ手順で作品を作り上げていきます。最終的にどんなインベーダーゲームが出来るか楽しみです(^^♪
《狙い・成果》
【狙い】
1.「作る」作業の前後の工程を大切に
「設計(考える)」→「製造(作る)」→「テスト(確認する)」の3つの工程を意識して作品づくりのレッスンをしています。単に完成すれば良いではなく「考えて」から「作る」、作ってから「確認する」ことの重要性を知ってもらうことを意識しています。
2.文章や図で書いてある説明を読んで理解すること
今回は講師の説明を極力減らし意図的に全ての作業内容を設計書に書き起こしました。ドキュメントから作るプログラムの内容を読み取る力を付けてもらうようにしています。
3.仕様通りに作る必要性
モノづくりにおいて、自分が好きなものやセンスを活かして作ることはとても大切です。ただ一方で、どうしても得意なことや経験に頼りすぎると表現力が単調になってしまいがちです。また結果的にそれがニーズと合わず独りよがりになることもありえます。今回は「仕様通りに作る」部分と「自由に創作できる」部分を分けて用意することで柔軟なモノづくり力を養ってもらうようにしています。
【成果】
今回は全ての作業工程に「確認」の時間を厳しめに設定しました。それもあって全体的にやり直し、作り直しをする生徒が少なく、確認の重要性を学んでいただけたと思います。また設計書を読み込むこと、その通りに作ることにも少しずつ順応していってもらっています。
中級Ⅰコース
《レッスン内容》
中級Ⅰは、ブロックプログラミングからテキストプログラミングに移行するために8x9Craft(言語はJavaScript)を用いてインプット中心に課題を進めています。基本的に個人進捗で課題を進めていますが、途中で習熟度の確認も含めてアウトプット主体のレッスンを実施します。
《狙い・成果》
※中級Ⅰは初級とは違い、基本的に期間毎の内容の区切りはありませんので、以下は通年の中級Ⅰ自体の狙いと成果となります。
本格的なプログラムをつくるためには、やはりテキストでのプログラミングが必須になってきます。ゲーム・アプリ・業務システム・科学技術研究・ホームページ・その他のIT技術活用やコンピューティングなどのプログラムは、それぞれの用途目的に適した英語ベースのテキストプログラミング言語でプログラミングをします。
中級Ⅰでは、将来、どのようなテキストプログラミング言語を使うことになっても対応できるような、テキストプログラミングの基礎・本質を身につけることを目標にカリキュラムを定めています。
まずは、初級のブロックプログラミングで学習したプログラム3大要素「順次処理」「繰り返し」「条件分岐」を、改めてテキストプログラミングとして学びます。8x9craftならではの「同じ目的を、違うプログラミング言語で実現」を活かして、「あ!英語(テキスト)になったからと言っても、ブロックプログラミングとプログラムの流れは変わらないのか!」という感覚をしっかりと体験します。
その後、さらに本格的なプログラミングの文法や考え方を実践を通して身につけていきますが、淡々と教科書通り的にやっていくのではなく、1つ1つ本質を捉えて問題解決に取り組むカタチになっており、1つの課題に何時間もかかることもありますが「仮説と検証」「Try&Error」をたくさん経験し、根気よく粘り強くやれば必ず問題は解決できることを身につけ、チャレンジすることを恐れない心を育んでもらえるようにしています。また、プログラミングなどの制作作業はチームワークが大事になってくることなどを伝え、コミュニケーションの大事さをプログラミングを通して学びます。これはきっと将来プログラマー以外のお仕事にも活かされていくと考えます。
中級Ⅱコース
《レッスン内容》
【辻クラス】
私自身、数学が得意なのでプログラミングと関係性の深い数学・物理・統計などを盛り込んだレッスンを実施しています。言語は人工知能、機械学習で多く使用されるPython言語を使用し、ゲームづくりを通して楽しくプログラミングを学べるようにしています。
《狙い・成果》
【狙い】
・時代が変わっても役に立つ、基礎となる技術を修得する
・プログラミングを通して数学、物理の理解を深め、より幅の広い開発ができる事を目指す
・プログラミング、数学の面白さを知ってもらう
【成果】
・自分で学んで、自分で調べて、自分で解決する力が身につける
・パターンを見抜く力がつき、そこから応用する力に発展させる
・数学に関しては、生徒から次のような声をきいています。
「学校の数学授業の予習になった」
「数学が目に見える形になると、おもしろい」
「数学が学校以外でも役立つことに気づいた」
【この記事を書いた人】
大原 真希 / インストラクター及び事務スタッフ
大学卒業後、神戸の企業でシステムエンジニアとして働き、出産を機に退職。その後母親業に専念し、徐々に自宅でのプログラム請負やパートでの事務職を経験する。現在は大学で派遣スタッフとして働く傍ら、「キッズプログラミングスクール8x9(ハック)」でのインストラクター兼事務スタッフとして働く。プログラミング、データ加工、業務効率化が好き。Excel、SpreadSheetが得意分野。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?