見出し画像

【8x9通信】2021年5月号

こんにちは、ハックです!大阪と兵庫に緊急事態宣言が出され、ステイホームを余儀なくされたゴールデンウィークでしたね。いかがお過ごしでしたか?実際、身近でも感染情報がたくさん耳に入ってきています。どうかみなさん、感染対策をしっかりしてこの危機的状況を乗り切ってくださいね。ハックスタッフも感染対策により一層気を引き締めて、安心してレッスンを受けてもらえるよう努めてまいります!それでは、5月の【8x9通信】をお届けします。


初級Ⅰ

初級Ⅰ

《レッスン内容》

今月は「8x9Craft」を使用し2~4名でチームを組み、荒れ果てた土地を開発していくワークです!開発テーマは「食べ物に困らない土地」「きれいな海がある土地」等、SDGsにちなんだ17種類を用意し、ただテーマ通り作って終わりではなく、作った上で他者にどのように利用してほしいかまで想像してもらいながら制作に取り組んでもらいました(^^)

また、このワークはチーム開発であっても役割分担とプログラミングの「反復処理」を徹底しなければ90分以内に完成させることが難しいという特徴があります。そのため「どうにか作り終えたい!」という強い目的意識から、チームで協力したりプログラミングを手段として活用することを自然と実現しています。皆さん、素敵な家を建てたり、大きな池を作ったり、畑に食料を育てたり、豚や羊など家畜を放牧する牧場を作ったり、各チームが知恵を出し合って取り組んでいました(^^)


《狙い・成果》

【ワーク特有のもの】
・チーム開発における「協働力」「コミュニケーション力」「やり抜く力」
・設計、検索能力の向上(開発に使用する資材IDの選定と調査)

【プログラムの概念】
・反復処理「くり返し」

初級Ⅱコース

初級Ⅱ

《レッスン内容》

初級Ⅱクラスは4月・5月の2ヶ月間でIchigoJam webを使用しジャンピングゲームを作成します。ゲーム自体は横スクロール型のシンプルなゲームです。
2か月目の今月は、色々なゲームの機能を追加をしていきました。
 ・スコア(点数)が表示されるように
 ・ジャンプするときに音が出るように
 ・アイテムをゲットしたら大きなジャンプをするように
…等々どんどん改造を加えていきます。
改造をする際に、あらかじめゲーム機能の説明を箇条書きにしたモノとUML(統一モデリング言語)のひとつ「アクティビティ図」で図示したモノを読んでから修正・追加する部分を考えるようにしました。その後、BASICのソースコードを改造していきます。
改造したプログラムが上手く動いた時に歓声を上げる子も多々いました。

《狙い・成果》

【狙い】
改造する際にどの部分のコードがどの動きを制御しているのか、変数の値が変わると動きがどう変わるのか、しっかり読み解けないとプログラムは改造はできません。改造する内容の理解とBASICプログラムの理解の両面を学ぶようにしました。
【成果】
ゲームでさせたい動きを自分の頭の中でしっかり把握してからプログラミングに取り組むスタイルで、難しく感じる子が多かったようです。
そんな中、みんな一生懸命考えてがんばって取り組んでいました。

中級Ⅰコース

画像4

《レッスン内容》

中級Ⅰは、4月より新カリキュラムに移行し、教材も新しくなりました。新カリキュラムでは「基礎編」「応用編(共通)」「応用編(選択)」と段階的に確実にプログラミングを学んでいけるように工夫しました。
1)ブロックプログラミングからテキストプログラミングへの移行を主目的とした「基礎編」は慣れ親しんだ8x9Craftで学びます。
2)次に基礎知識を応用やテキストプログラミングならではのテクニックを学ぶ「応用編(共通)」をp5.js(OpenProcessing)で学びます。
3)テキストプログラミングで出来ることをしっかり学んだあとは「応用編(選択)」として、選択制で数学、アート、音楽、ゲーム、ホームページ、便利ツールなどのさまざまな分野でのプログラミング・コンピュータの応用・活用を経験していただけます。
全体を通して、テキストプログラミングの知識を得るのは当然のことながら、さらに「もしかしたら社会に役立つかも」「自分が作りたいものは、これだ!」を発見してもらえれば幸いです!
また、セクションごとに理解度チェックも実施するようになります。
「テスト」と言ってしまうと「点数が高ければOK」「クリアすればOK」というように思われる可能性もありましたので、気軽に受けたり、熟練したあとでも振り返りをやりやすくしたい想いを込めて「理解度チェック」と名付けております!
プログラミングは積み重ねの経験が大事であり、また、根本・基礎の理解をしないままで進めてしまうと、あとで困ってしまう可能性がありますので、確実に学習していってほしいと考えております。ですので、場合によっては過去に学んだことを振り返りレッスン・理解度チェックをすることもありますが、それはあとで困らないようにしっかりと理解するためのものです!


《狙い・成果》

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

中級Ⅱコース

画像5


《レッスン内容》​

【柴原クラス】
【マインクラフト Forge Mod 作成事始め】
MineCraft Java Edition にMod(モッド、改造プログラム)を追加できる「Forge」のプログラミングの基礎を習得していっています。

《狙い・成果》

<狙い>
一般の方がプログラミング習得にチャレンジしたときの一番の挫折ポイントは、プログラミング言語の文法や構造の理解より以前に「環境構築」であると言われています。プログミングスクールで用意されるプログラミング環境は予め用意されているものがほとんどです。それは当スクールの初級1・初級2・中級1でも同様です。
ですが、プログラマーたるもの、自分が作りたいものを作るためには自分でプログラミング環境を構築する必要があるので、今回、各人のPCそれぞれにForge Mod 開発環境を構築するところから始め、各人それぞれの問題を自ら調べて解決することをやっています!
また、プログラミング言語はオブジェクト指向言語「Java」を使い、未知のAPI(命令群、Application Programming Interface)を探して・見つけて・試して・・・というチャレンジをたくさんしています。
プログラミング学習のフェーズとしては「教わったことで何かする」ではなく「知らないことを自分で解決する能力を身につける」を狙いとしています!

<成果>
スムーズに進むこともあれば、非常に困難・意味不明なエラーが出て行き詰まりもしますが、一歩一歩、あれやこれや試していけば、ちゃんと進めることができることを実感されていると思います!


【この記事を書いた人】

画像3

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

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

オープン学級通信

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