楓プログラミングスタジオ たっきーBlog

JEUGIAカルチャーセンター桑名からスタートした「はじめてのプログラミング教室」は、『楓プログラミングスタジオ』に生まれ変わりました。小学生と中学生の子どもがメインですが大人初心者も大歓迎。教室でのワークの様子やプログラミングに関する記事を掲載します。弥富教室の体験と講座のお申込みは、https://kaede-pgstudio.net/contact/ まで。桑名教室は、JEUGIAカルチャーセンター桑名(Tel:0594-27-7211)まで。

スクラッチ & プログラミングマイコン(Chibi:bit)でゲーム作り!

クラッチ & プログラミングマイコン(Chibi:bit)でゲーム作り!

こんにちわ、桑名プログラミング教室のたかあきです。 昨日(10/22)の教室の様子をお伝えします。

  • sho君はプログラミングマイコンのChibi:bitに初挑戦。
  • syun君,yu君は前回に引き続きクラッチでアクションゲームの制作を行いました。
  • syu君はPythonでプログラミングドリル、shiちゃんはクラッチでプログラミングドリルの『ペンでお絵かき』に取り組みました。
  • 昨日の教室はどうだったかな?楽しみながらかつ学びの多い時間だったでしょうか?

プログラミングマイコン Chibi:bitを使ってみようー

  • "Chibi:bit"はプログラミングできるマイコンボードです。言語はスクラッチに似たビジュアルプログラミング、Java Script、Pythonのエディタがあります。
  • "Chibi:bit"でできることは、以前投稿した下記の記事を参照ください。

takaaki.hatenablog.jp

takaaki.hatenablog.jp

takaaki.hatenablog.jp

  • sho君が取り組んだChibi:bitの課題は下記になります。

    • 練習1: ちびびっと(マイコン)を使ったはじめてのプログラミング
    • 練習2: LEDに数字や文字を表示させよう
    • かんがえよう1 LEDに数字や文字を表示させよう
    • 練習3 ボタンを使おう
    • かんがえよう2: ボタンを使おう
    • 練習4: 加速度センサーを使おう
    • 考えよう3: 加速度センサーを使おう
    • 練習5: 温度センサーを使おう
    • かんがえよう4: カウントアッププログラム
    • かんがえよう5: 数字あてゲーム
    • かんがえよう6: 計算ゲーム
  • なんと!用意した課題を全部クリアし、先生が用意したスピーカーを使ってオリジナルの課題に挑戦。sho君が楽譜覚えていた曲を作って、Chibi:bitにスピーカー接続して曲を聞かせてくれました。スゴイ!!

  • 次回もChibi:bitでおもしろい課題考えてきます。楽しみにして来て下さい。写真は計算ゲームを実演してくれている様子です。

f:id:takaaki-niikawa:20171022153117j:plain

小学3年生作った飛行機対戦ゲーム

  • yu君は前回の特別テーマで惜しくも完成まで行かなかった飛行機対戦ゲームが、無事完成ー。飛行機が玉(実際はボールのスプライトです)を発射して、敵の飛行機を倒すゲームです。始めは敵は2体でしたが、最後に工夫してたくさんの敵を準備しました。大勢の敵に立ち向かう姿はかっこいいですね。 f:id:takaaki-niikawa:20171022153343p:plain

  • 少し難しい課題に取り組むとき、一度に全部作ることは難しいから少しずつテストしながら完成まで持っていこう。楽しいゲームができて先生も嬉しいです。

  • 大きな目標に挑戦するとき、少しずつ目標を区切って、小さい目標をひとつずつ超えて行こう。 先生からの課題、自分で考えた作品、考え悩みながらプログラミングに取り組むことで、みんな確実に力が育っています!

  • 昨日yu君が仕上げた飛行機対戦ゲームの動画と、もう一つスクラッチカードを見ながら作ったピンポンゲームの動画をアップしています。どちらもyu君の作品です。

スクラッチでアクションゲーム作り 生徒作品アップしまーす!

  • こんばんわ、桑名プログラミング教室のたかあきです。前回の教室では、特別テーマ『スクラッチでアクションゲーム作り』を行いました。

takaaki.hatenablog.jp

  • 今日は、アクションゲームの生徒作品をアップします。
    • 1つ目はshiちゃんの作品です。ねこのスプライトが空を飛び、コウモリを避けたりアイテムをゲットしてポイントを競うゲームです。背景に雲が流れるところが可愛い作品に仕上がっていますね!

f:id:takaaki-niikawa:20171019005348p:plain

  • 2つ目はsho君のアクションゲーム魔界村です。先生も子どもの頃ゲームボーイ魔界村を遊んでいたので、とても懐かしかった!楽しく遊ばせて貰いましたー。飛んでくる玉のスピート、タイミングが絶妙で難易度あり、燃えてきます。

f:id:takaaki-niikawa:20171019005643p:plain

  • 生徒作品の動画をYoutubeアップしています。是非ご覧ください。

カルチャースクールで1年間プログラミングを教えてみて感じること

カルチャースクールで1年間プログラミングを教えてみて感じること

プログラミングの先生になって1年が経ちましたー

こんばんわ、桑名『はじめてのプログラミング教室』の先生をさせて頂いていますたかあきです。 2016年の夏、「子どもにプログラミングを教えたい!」と目標を掲げまして、鉄は熱いうちに!!の気持ちでJEUGIAカルチャーセンター桑名さんにTelしました。 ちょうど今から1年前の2016/10/15(土)に第一回の体験会を行いました。僕にとってもはじめての先生だったので、大変ドキドキわくわくでした。

あれから1年が経ちましたー。なにをどうやって教えようか悩みと準備に追われる日々ですが、自分で決めた目標を行動に移すことができたのもJEUGIAカルチャーセンター桑名のスタッフ方々と何より、週末に快く送り出してくれた妻と子ども達に感謝です。頭が上がりません。

1年間プログラミングを教えてみて感じること

1年間プログラミングを教えてみて感じること、それはイチバンはプログラミングのスキルや論理的な思考力を身につけることよりも、プログラミングというテーマを通して楽しんで学ぶことだと思っています。 学生時代、苦しんで暗記したテスト対策より、これだけは他の子には負けたくない。好きなことに打ち込んで夢中に取り組んだことは一生消えません。せっかくやるなら、楽しんだもの勝ちです!

読み・書き・そろばん・プログラミング

先生が中高生だった20年前と比べればコンピューターはずっと身近になりました。それでも学校でのIT教育に大きな変化はないと感じています。 しかし、この20年間で世界は大きく変わりました。 世界に15億台のスマートフォンが出荷され、2人に1台がスマフォを持っています。二本足で歩くロボットや人間と会話するロボットが買える時代になりました。近い将来、車は完全に自動運転になるでしょう。SF映画だと思っていた人工知能が現実になりました。ありとあらゆるデバイスがインターネットに接続され、ウィルスやサイバーテロによって交通機関が止まったり工場の生産がストップすることもあります。

こんなに世界の変化が早い中、学校の授業でワープロとペイントだけ教わって社会に出る教育に危機感を感じます。日本の子ども達に世界で戦える力を。 プログラミングが特別な習い事ではなく、『読み・書き・そろばん・プログラミング』と並ぶほど当たり前になればと思っています。

なぜプログラミングを学ぶのか?

僕も小中学生の子を持つ親ですから。パソコンを準備して、決して安くないプログラミングを習いに行く必要があるのか。その疑問に共感できます。 一つ確実に言えることは、この世界を変えるのはあなた自身だということです。 技術の進化によって、今ある職業がコンピューターやロボットに代わられるとの予測があります。しかし、そのコンピューターやロボットを開発するのも人間です。コンピューターがある限り、プログラマーは必要な仕事です。 また、どんな職業であっても学びが必要です。せっかくなら楽しんで学び、夢を獲得しましょう。

言うは易し。先生はいつも悩みの中です。そして毎回の教室が、先生にとっての学びです。 これからも、どうぞよろしくお願いします。

以下は、1年前に作ったチラシです。

f:id:takaaki-niikawa:20171014233533p:plain

アクションゲームのフローチャート(流れ図)からプログラムを作ろう~!!

アクションゲームのフローチャート(流れ図)からプログラムを作ろう~!!

  • こんばんわ、桑名プログラミング教室のたかあきです。先週の教室では、特別テーマ『スクラッチでアクションゲーム作り』を行いました。

takaaki.hatenablog.jp

  • 今日はその教室での未公開資料(極秘!?)をお見せします!! 以前ご紹介したマリオ風アクションゲームのフローチャートです。

takaaki.hatenablog.jp

フローチャートって何?

  • フローチャートプログラムの設計図 の様なものです。プログラムの処理の順序を箱や矢印で表したものです。流れ図とも言います。
  • フローチャートはプログラムを作成する前に作ります。複雑な処理を視覚化して間違いを発見したり、他の人が理解しやすくするために使います。
  • 本当は子ども達がノーアイディアだったらこの資料を見ながら作ってもらおうかと思いましたが、全員アイディア持参でしたので結果未公開資料になっちゃいました!!

アクションゲームのフローチャート

f:id:takaaki-niikawa:20171012220055p:plain

フローチャートからプログラムを作ろう

  • いつもなんとなくからプログラムを作り始める人や誰かが作ったプログラムを改良している人はいませんか?(それはスゴイんです。頭で仕組みを考えることは素晴らしい能力ですよ。)
  • だからこそ、今日は一度アイディアを設計図(フローチャート)に起こしてから、作ってみませんか?アイディアを形にして整理することで見えてくる発見もあると思うよ。

生徒みんなでスクラッチを使ったアクションゲーム作りに挑戦!

特別テーマ『スクラッチでアクションゲーム作り』

  • おはようございます。プログラミング教室の先生をしております、たかあきです。 プログラミング教室をスタートさせ、今月で1年を迎えようとしています! 今週の教室は、特別テーマ『スクラッチでアクションゲーム作り』を行いました。

  • 先ず宿題としてアイディアを考えてきてもらいました。 いつもの様に、ホワイトボードにみんなのアイディアを書きだしています。 先生は、以前ブログでもご紹介したマリオ風横スクロールのアクションゲームと先週作ったシューティングゲームをサンプルとして見せていました。

takaaki.hatenablog.jp

takaaki.hatenablog.jp

  • やっぱり子どものアイディアはすごい! 先生と同じ種類のプログラムはなく、どれもオリジナルのゲームが出てきました。 アイディアをご紹介します。(実際のゲーム画像がなくてすみません…) 色々なアイディアがありますね!!

f:id:takaaki-niikawa:20171009081952j:plain

  1. shiちゃん)
    • スプライトが動き回りポイントを獲得するゲームです。ベルやハートはポイントが増え、コウモリはポイントが減るみたいです。
  2. syu君)
    • 画面の上下左右から順に現れる敵を矢印で倒して行くゲームです。もぐら叩き風あっち向いてほい、といった感じでしょうか。
  3. syun君)
    • スプライトのねこと自分で描いたクマ(ラスボス風)が対戦するゲーム。
  4. yu君)
    • 飛行機対戦ゲームで、飛行機から玉を発射し、敵飛行機を倒す。3回ライフがあり、制限時間は60秒以内。

制作風景です

  • ベテランの小学生組は、あっという間に完成ー。syu君は二つ目のゲームも作ってくれました。思い付いたプログラムを形にすることができます。
  • syun君はゲーム作りのプロ。アイディアマンで、自分で描いたり工夫ができます。 f:id:takaaki-niikawa:20171009082153j:plain

  • shiちゃんは丁寧な作業ができます。とても根気強いです。

  • yu君は最年少だけど今回はちょっと難しい課題に挑戦。チャレンジする心とユーモアあり。家でもスクラッチを開いて、続きを作ろう。完璧にできなくてもいいから、たくさん考え悩んで下さい。 f:id:takaaki-niikawa:20171009082231j:plain

結果よりプロセス

  • 算数で、すらすらと解けた問題より、よく分からず時間をかけて挑戦した問題の方がずっと頭に残ります。
  • 大人が手を貸すとあっという間かもしれませんが、苦手な家庭科の裁縫や技術で作った工作は苦労もあり、忘れられない記憶です。

  • 人間は悩んで脳みそを使っただけ考える力が育ち、苦労した分成長します。根気よく取り組めば、必ず完成します。プログラミングを通して、未来を育てて行きましょう。

Pywapi APIを使って、Pythonで天気予報を作ろう!(後半)

pywapi APIが使いたい

  • 先日、Pythonで天気予報を作ろう!(前半)を投稿しました。32bit Windows環境のPythonにpywapi APIをインストールするまでの流れは前半を参照ください。

takaaki.hatenablog.jp

  • pywapi APIをインストールすることができましたが、なぜかpywapiモジュールを使用することができません。
    • numpyモジュールを参考にモジュールの配置先を調べてみました。
    • どうやらPython配下のLib\site-packagesにpywapiモジュールを配置する必要がありそうです。site-packagesは3rd party製のモジュールを配置するディレクトリの様です。
    • インストール後にbuildされたpywapi.pyLib\site-packagesに配置することで、無事にモジュールが使用できました。

f:id:takaaki-niikawa:20171006113342p:plain

Pywapi APIを使って天気データを取得するプログラムを作ろう!

  • pywapiに添付のexamples等を参考に、Pywapi APIを使ったプログラムを作ってみました。
    • 今回のプログラムは、weather.comからデータを取得するプログラムになります。
    • 東京はコードJAXX0085, 四日市はコードJAXX0098になります。
    • 具体的には、下記URLからのデータ取得になります。

東京, 日本の天気予報と天候状況 - The Weather Channel | Weather.com

四日市, 日本の天気予報と天候状況 - The Weather Channel | Weather.com

import pywapi
from datetime import datetime

result1 = pywapi.get_weather_from_weather_com('JAXX0085')
location1 = result1['location']['name']
condition1 = result1['current_conditions']['text']
print("##### 東京 #####")
print("location: ", location1)
print("condition: ", condition1)
result2 = pywapi.get_weather_from_weather_com('JAXX0098')
location2 = result2['location']['name']
condition2 = result2['current_conditions']['text']
print("##### 桑名 #####")
print("location: ", location2)
print("condition: ", condition2)
  • Pythonの実行結果です。 f:id:takaaki-niikawa:20171006113620p:plain

天気予報の表示プログラムは?

  • current_conditions変数は現在の天気になりますが、取得したデータのforecasts変数を使用することで明日以降の天気予報も表示できます。
  • 下記Qiitaの記事がとても参考になります。私も自分オリジナルの天気予報プログラムを作ろうと思います。

qiita.com

Pythonでnumpy を使ってみよー!

Pythonにnumpyは入っているか?

  • Python Shellを使い、numpyが入っているかを確認します。 ImportError: No module named 'numpy' と表示されました。どうやらnumpyは入っていないようです…。

f:id:takaaki-niikawa:20171005003810p:plain

numpyをインストールしよう

C:\>pip install numpy
Collecting numpy
  Downloading numpy-1.13.3-2-cp35-none-win32.whl (6.8MB)
    100% |################################| 6.8MB 31kB/s
Installing collected packages: numpy
Successfully installed numpy-1.13.3

f:id:takaaki-niikawa:20171005003924p:plain

numpyをimportして使ってみよー!

  • numpyのmathモジュールをimportします。Python Shellを使用します。
>>> from numpy import math
>>> math.sqrt(16)
4.0

f:id:takaaki-niikawa:20171005005117p:plain

参考

  • numpyを使って、中学・高校で習った数学の問題に再挑戦してはいかがでしょうか。
  • numpyにどんな関数があるのか下記の記事が参考になります。

NumPy で数学系の関数を使ってみよう – Python でデータサイエンス