見出し画像

【8x9通信】2022年11月号

こんにちは、神戸・西宮・大阪・姫路にある現役エンジニアが教えるプログラミング教室、ハックです!先日、大学入試センターより、令和7年度の試作問題が公表されました。2年後より始まる「情報Ⅰ」の問題も載っています。今、中級クラスに通う中学生、高校生の生徒の皆さんは、一度目を通していただくといいかもしれませんね。特に大問3は、プログラミングの問題になるので、ハックで学んでいる知識が役に立つと思いますよ。
それでは、今月の【8x9通信】をお届けします!

お知らせ

今年は3年ぶりに、「トライやるウィーク」が実施されています。ハックでは烏帽子中学校の2年生を3人、3日間受け入れました。
中学生たちに、レッスンの体験をしてもらったり、パソコンの初期設定や備品管理、教材用8x9Craftオブジェクト作成、ブログの更新などをしてもらいました。
生徒たちが作ったブログ、よければ見てあげてくださいね!こちらから。

初級Ⅰコース

《レッスン内容》

10月は、FireAlpacaというフリーのペイントツールと、Scratchを使ってゲームを作るレッスンでした。ペイントツールの使い方や、レイヤーの概念、著作フリーの画像の探し方などを学びました。ツールを使って描いた画像や切り抜いた画像を、Scratchに取り込んでゲームを作りました。

《狙い・成果》

10月の「FireAlpaca」を使ったレッスンでは、コンピュータでオリジナルのイラストを作ったり、レイヤーの技術を使って画像を切り抜く方法を学びました。また著作権についても学び、ネット上の写真やイラストを勝手に使ってはいけないこと、著作権フリーの画像やイラストを検索するための方法なども学びました。
作ったイラストはScratchに保存するのですが、Scratchにはコミュニティガイドラインがあることを伝えています。コミュニティガイドラインを守りみんなが気持ちよくScratchを使う意味を生徒達に伝えました。
コンピュータやインターネットは使い方を間違えると怖い思いをすることがありますが、使い方を間違えなければとても便利なツールです。
便利に安全に使えるための知識や使い方を授業を通して身に着け「コンピュータ(IT)を活用したモノづくりができる」スキルを身に着けてもらいたいと考えています。

初級Ⅱコース

《レッスン内容》

初級Ⅱクラスは、10月11月の2か月間、8x9Craftを使った「はっくん土地開発」というレッスンを行います。
前半は、「プログラミング建築士の修行」を行いました。
繰り返しを用いて処理を行い、それらを関数化していくレッスンです。
出来るだけ効率的に、土地開発が出来ることを目指して、修行を行いました。
修行は「初級」「中級」「上級」「特級」と4つのレベルがあり、
「特級」を目指して、10月中に進められるところまで、進めてもらいました。
修行の内容は上の図にあるように
レンガに囲まれた土地の地面を整地していくものです。
修行の内容は次のとおりです。
1−1:砂を草に置き換える(整地)
1−2:整地しながら反対の壁まで進む
1−3:前のブロックを壊しながら進む
2−1:前 の ブロックの ID と メタ を しらべる
2−2:前に 砂 が あるときだけ こわす
2−3:前が レンガ なら くり返し を やめる
2−4:前が 空気 のときだけ 前に進む
3−1:1列 整地 したら スタート地点に瞬間移動
3−2:プログラムを関数化(部品化)
4−1:ヨコ にも 動いて 何列も整地
4−2: くり返しの前にも しらべる(くり返しの中でも)

《狙い・成果》

【狙い】
・プログラミングで作業を自動化すること
・「繰り返し」「関数」を使って処理をまとめること
・論理的にモノを考えられるようになること
・必要なときに、講師に成果報告ができるようになること
【成果】
・プログラミングで作業を自動化して、プログラムの便利さを実感してもら       えました。
・「繰り返し」「関数」を使って処理をまとめることで、
     処理の抽象化することの大事さを感じてもらいました。
・自分がやりたいことをプログラムに置き換える過程を通して、
    論理的にモノを考えられる力を養ってもらいました。
・みなさん、修行のレベルが上がるたびに「できました!」と元気に報告し        てくださいました。

中級Ⅰコース

《レッスン内容》

1)ブロックプログラミングからテキストプログラミングへの移行を主目的とした「基礎編」は慣れ親しんだ8x9Craftで学びます。
2)次に基礎知識を応用やテキストプログラミングならではのテクニックを学ぶ「応用編(共通)」をp5.js(OpenProcessing)で学びます。
3)テキストプログラミングで出来ることをしっかり学んだあとは「応用編(選択)」として、選択制で数学、アート、音楽、ゲーム、ホームページ、便利ツールなどのさまざまな分野でのプログラミング・コンピュータの応用・活用を経験していただけます。

《狙い・成果》

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

中級Ⅱコース

生徒が制作したゲームの画面

《レッスン内容》

【柴原クラス】
9月からJavaScriptゲームエンジンを使ったWeb上のゲーム開発基礎の学習を続けています。
4月からHTML/CSS/JavaScriptでVueを使ったWebシステムの基礎を学び、さらにもっとJavaScriptの可能性を広げていく目論見です。
9月から英語で記載されたチュートリアルを完成させ、10月からは先生が作ったテンプレートを改造・拡張して、各人のゲーム制作に取り組んでいます。

《狙い・成果》

【狙い】
JavaScriptの汎用性・可能性をもっと知り、また、ゲームプログラミングの基礎も学びます。
また、英語のチュートリアルを読んだり、翻訳したり、掲載されたプログラムを写経・実行・改造することにより、「英語圏発のプログラミングテクニックや技術を、自ら体得する」を経験しました。
【成果】
「ゲームを作る」というところは生徒さんそれぞれが大変興味のあるところであり、すでにScratchやp5.jsでゲームを作って発表したり、UnityやUnrealなどにも取り組んでいる皆さんですが、改めてゲームの基礎やフレームワーク・エンジンを使うこなすことの意義も学んでいます。
また「英語のチュートリアルにチャレンジ」の大事さも実感できていると思います。
一般的に「知識習得」をする上で一番手っ取り早いのは、先人の知恵や経験が詰まった本を読む「読書」と言われていますが、コンピューティング・プログラミングにおいては「チュートリアル」で手を動かすことがそれに値すると考えており、また、コンピュータ技術は英語圏発が多いので「英語のチュートリアル」に取り組むことが、日本において1つ抜きん出る大切な方法であることをお伝えできました。

【この記事を書いた人】

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

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