こどもプログラミング教室・オンライン講座/プログラミングアカデミー

こどもプログラミング教室・オンライン講座/プログラミングアカデミー

Scratch

2020/12/10

かしはらし Scratchプログラミングで学ぶ場所の表し方

場所を表す色々な方法

人に場所を説明する際、どのようにして相手に伝わるように表現するでしょうか。指をさして場所を指定する、今いる場所からどのような道筋で行くかを説明する、住所を教える、大体の方角と距離を伝える等々場所を説明する為の手段は数多く存在しています。それぞれ良い点、悪い点が存在しており、その時々に合わせて使い分けていく必要があります。しかしプログラムは違います。プログラムは1つの手段でのみ場所を表現します。この手段が座標です。基準となる地点を1つ設定し、そこから目標地点までの各方向の移動距離を指定することで目標地点を表す方法になります。基準や各方向の向き、数などは場合によって異なりますが基本的な考え方は同じです。そしてこの座標の考え方はScratchにも勿論使われています。Scratchでプログラミングを行っていくにはこの座標と言う考えかたをしっかりと把握しなければ自分の思い通りの動きを実現させることは難しいでしょう。

場所を表す重要性について

Scratchに限らず、プログラミングを行っていく上で自分の想像した通りの位置に要素を配置するスキルは必須になってきます。どのようなプログラムを作成する場合でも命令には場所の情報が必要になってきます。例えば自動販売機の場合、ボタンが押されたらその位置をまず把握し、指定された飲み物がある場所に対してそれを出すよう命令していく必要があります。ここだけで場所の情報を2回も使っています。車の場合、アクセルペダル、ブレーキペダルをどの位置まで踏んだのか、ハンドルをどれくらい回したのか等場所情報がかなりの頻度で使われます。このように機械はたくさんの位置情報を正確に把握し、それに対して動きを変えていかなければいけません。また、ゲームやWebサイト等、実際の動きが目に見えないものでも位置情報はたくさん使われています。例えばWebサイトですが、マウスポインタが上に来た時に画像が切り替わるような動きをつける場合、マウスポインタの位置や画像を切り替える範囲などを指定しなければいけません。プログラミングを行っていくうえで場所を示す情報は必須なのです。

プログラミングにおいて場所を示す方法

プログラミングを行っていくうえで様々な数字や情報を取り扱っていきます。その中に場所の情報もあります。最初に記述したように場所を示す方法は多数あります。直接指さす、道筋を説明する、住所を伝える等々…。プログラミングで一番使われる方法は座標を示す方法です。基準となる点を原点にし、その地点から各軸の方向にどれだけ離れているかで表します。この方法のメリットは2つです。1つは情報量が少ないことです。平面上であれば縦方向と横方向の2つの数字、立体であればそれに奥行きを足して3つの数字でそれぞれ決まった1つの点を表すことが出来ます。Scratchは平面なので基本的に2つの数字を使って場所を指定していきます。少し難しい計算をして応用すればScratchでも立体的な表現をすることが出来ますが今は省きます。Scratchに限らず、おおよそ平面上で座標を示す時は横方向の軸をX軸、縦方向の軸をY軸と呼び、それぞれの軸方向にどれだけ移動したかをX座標、Y座標と呼びます。この数字を操ることで好きな位置から好きな方向に好きな距離を移動させることが出来るようになります。

Scratchで座標を利用する方法

実際にScratch上でどのように座標を触っていくのかを説明していきます。まず、スプライトの表示位置を調節する時に座標を触ります。この場合、旗を押した際に表示させたい位置へ移動するようなプログラムを組みます。場所を変える、ということはつまり座標を弄るということです。これから先、何度も場所を変えたりすることがあると思いますが、場所関係の動きの場合はほぼ確実に座標を触るんだ、と理解しましょう。さて、どのようにして座標を弄るかと言いますとブロックに「X座標を~に、Y座標を~にする」というものがあります。このブロックの数字をそれぞれ指定してあげることでこの命令を実行した際にその座標の位置にスプライトが移動します。このようにScratchで座標を利用する方法はとても簡単で、ブロックに座標と書いてあるものを使うだけです。但し、ブロックが違えば動きは変わってきますのでそれぞれのブロックがどのように座標を変えるのかをしっかりと把握しなければいけません。

Scratch上での座標の基準

座標を決めるためには基準となる原点が必要になります。Scratchにももちろん原点が存在しております。原点の位置はステージの中心になります。そして各座標にも上限が存在します。その上限を超えるとステージからはみ出してしまうので基本的にこの上限値以内で各座標を触っていくことになります。その上限値ですがX座標の最大が280、Y座標お最大が180となります。また、それぞれの座標の数字ですが、X座標が大きくなれば右方向に、Y座標が大きくなれば上方向にずれていきます。ここで中心から左や下に行くにはどうすればよいか。それは先ほどとは逆のことをするので数字を小さくすればよいのです。0より小さい数字にすれば中心より左、下に指定することが出来ます。0より小さい数字とは負の数、つまりマイナスの数です。数字の手前に”ー”をつけるだけで大丈夫です。慣れるまでは計算など大変ですが、何度も触って慣れていきましょう。

2020/12/09

橿原市 Scratchプログラミングでゲームを作ろう

どんなゲームを作るか

ゲームを作るためにはまずどのような内容なのかを決めましょう。例えばアクションゲームやシューティングゲームといったジャンルからそれが縦スクロールなのか横スクロールなのか等ある程度の仕様まで決めておきます。今回は例題を設定しています。同じゲームを作ってもいいですし、流れのみ参考にしていただいても大丈夫です。ゲームの内容は、横から的が飛んできて、それをクリックすることで撃ち落とす、というものです。この際画面はスクロールせず的のみが横から流れてくるようにします。今回はこのように簡単に作れるよう様々な要素を削ってありますが、もしチャレンジするとしたらクリックしたときに弾を発射し、それが当たると撃ち落とせるようにする、的を複数種類用意しそれぞれで速さや得点を変える等、アイデア次第ではより面白い要素を追加できると思います。自分で思いつかない場合でも他の人の作品を参考にしたり、公開した後にアドバイスを求めてみたりすることでより良い作品を目指していくことが出来ます。

目標に合わせてどのような動きが必要かを確かめる

次にScratchで実際にゲームを作っていくのですが、何が必要か、どのような動きがいいのかを自分の中でしっかりと明確にしましょう。紙やテキストデータなど、文章にしてみるとより分かりやすいかと思います。今回の場合、まず必要な物は的の見た目です。そして動きですが的が一つしか来なかったら面白くないので複数出てくるようにします。出現方法ですが右端から左端へ流れるようにしましょう。クリックされたら撃ち落とされるので消えるようにします。これが的の動きになります。次に点数の動きです。スタートしたら点数は初期化しなければなりません。そし的を一つ消すたびに点数を追加していく必要があります。点数の動きはこの二つのみです。以上2つがこのゲームの基本的な動きを構成しています。なのでまずはこれらを1つずつ実現させていきます。例えば点数の動きですが、まず最初に点数を管理するための変数を作成します。そしてゲームが始まるたびにその変数を初期化させます。ゲームの開始時なので旗が押された時ブロックを用意します。そして初期化するために点数を0にするブロックを下につなげます。この時点で旗を押すたびに点数が0になるはずです。確認のために点数を~にするブロックを使って任意の数字にし、旗を押してみましょう。0になれば完成です。このように他の動きもブロックで表現し、確認していきましょう。

作成した動きを組み合わせる

動きを1つずつ作成し終えたら次はそれらを組み合わせていきます。先ほどの点数を0にする動きを的のスプライトに書き込み、その下に続けて的の初期設定をしてあげるブロックを繋げていきます。先ほどまではおそらく別々のスクリプトになっていたはずですがこれらは1つにしても問題ないはずです。もちろん、きちんと動くかチェックを忘れないようにしましょう。初期設定が終わったら次は自身のクローンを作り続けるループに入るようにします。これも別のスクリプトだったものを合体させます。このようにして動きを組み合わせて1つの大きな動きにしていきます。この時、動きを処理させる順番も重要になってきます。ループの中に初期設定を入れてしまうと動きに不具合が出てしまうはずです。このミス自体はよく起きてしまうものです。それに対していかに素早く気づけるか、が大事になってきます。なので組み合わせていく際もチェックを欠かさず行っていき、不具合が出た場合はそれの解消を最優先にしていきましょう。

とても大事な最終チェック

上記の作業を何度もこなしていくと、最終的に自分で納得のできる作品が仕上がってきます。そこで完成だと公開するのは少し気が早いです。最後の詰めとして最終チェックをしていきましょう。具体的にどのようなさぎょうをするかというと、通しで作品をプレイしていきます。その際、1週ではなく何回もしましょう。ずっと同じ動作をしてもよいですが基本的には出来る事を全てチェックします。キーやクリックの連打、何もない場所のクリック等、様々なシーンを想定してチェックします。シンプルなゲームであれば予期せぬ不具合はほとんど発生しませんが、内容が濃くなればなるほど、予想外の不具合が発生してしまうものです。実際のゲーム製作でも作品を発売する前にチェック作業を何日もかけ、何人もの手で行っていくのです。この不具合を見つけ、取り除く作業のことをデバッグと呼びます。デバッグ専門の会社が存在するほどこの作業は重要です。自分たちでしっかりと不具合を見つけ、修正していきましょう。

ゲームが完成したら

ここまで様々な作業をこなし、大変な思いをしてやっとこさ完成させたゲームですが、自分一人だけで楽しむのはもったいない、と思いませんか。Scratchでは自分の作品を様々な人に公開することが出来ます。最初は誰にも見てもらえないかもしれません。しかし自分から積極的に他の人の作品を参考にし、その都度コメントを残していくことで交流が広がるはずです。頑張って作った作品にコメントが付くとそれはもう嬉しい思いになります。このゲームのこんなところが良かった、とかここの動きが素晴らしいので参考にさせてもらいます等のコメントが付けば、そのゲーム制作は大成功だったと言えるでしょう。しかし、そういったコメントではなく否定的な意見が付くこともあります。面白くない、どこどこの動きがおかしい、不具合がある等々、これらのようなコメントが付いたとしても不安にならないでください。逆に言えばその部分を直せば良い作品になるはずなのです。完成した後でもゲーム製作は続けられます。不具合を直し、おかしい動きを修正し、より面白くなるようなアイデアをひねり出してゲームのクォリティを上げていきましょう。

2020/12/04

橿原市 Scratchプログラミングで学ぶゲーム製作

Scratchとは

Scratchとはプログラミングに触ったことが無い人やコーディングに苦手意識を憶えてしまった人に向けて開発されたプログラミングアプリです。すべての機能が無料で仕様することが出来ます。プログラムを作っていくうえでアルゴリズムやフローチャートといった処理の順番や優先順位などを考えなければいけないのですがScratchはそれを視覚的、感覚的に分かりやすく表してくれます。なのでプログラミングに触ったことが無い人でもさせたい動きとそれに必要な処理さえ分かっていればプログラムを作ることが出来るのです。目標を決め、それに必要な動作や処理の順番をあれこれ試行錯誤する過程を感覚的に進めることが出来るのがScratchの良いところです。ゲームを自作する場合もまずはScratchから進めていき、より本格的なものを作りたくなったら別の言語やツールを使っていくことをお勧めします。

ゲームを作る準備

ゲームを作る為にはたくさんの準備が必要になります。まずはゲームのジャンル決めです。どのようなゲームにするのか、格闘ゲームなのかシューティングゲームなのかといったゲームの大まかなジャンルを決めます。その次に実際のゲームの動きについて決めていきます。ここで自分の個性を発揮していきましょう。ただし、あまりにも複雑にすると構築が大変になるので最初の内はシンプルなゲームを作ることをお勧めします。全体の動きを考えた後はその動きを実現するために必要な命令を考えていきます。この際に必要な命令と処理の順番、条件の分岐などを考えていく必要があります。言葉にするとすごく難しく聞こえますが要するにどんな時にどんな動きをさせるかをまとめる作業です。そして最後にゲームに使う画像や音楽などの素材の準備です。これはゲーム製作を始めてからでも大丈夫ですので出来たら準備しておいたほうがいい、程度に考えて大丈夫です。これらの準備を資料にしたものを仕様書と呼び、実際の制作現場では必ず最初に用意するものになります。この仕様書がどれだけ精密でしっかりと書けているかによって作品のクオリティも変わってきます。

実際にゲームを作成していく

仕様書が出来ましたら実際に作成していきます。仕様書にある必要な動きを実現していきます。この際、複数の動きを一気に作り、後でまとめてチェックしてしまうとどの部分で不具合が起きているのか、組み合わせの問題なのかがわからなくなってしまうので1つずつ作り、その都度動作チェックをしていきましょう。Scratchの場合、各動作ごとにプロジェクトを分けてしまうのもお勧めです。その時点で動きがおかしい場合、動きを実現させるためのプログラミングがそもそも間違っていると考えられます。その部分を直していきましょう。ある程度動きが出来てきたら複数を組み合わせましょう。どのように組み合わせればよいのか、処理の順番はどうなのか、分岐の条件は等、試行錯誤しつつ組み合わせていきます。ここで不具合が出てしまった場合、先ほどの組み合わせの部分や処理、条件分岐が間違っていると考えられますのでより良い方法を探りましょう。このサイクルを繰り返していき、目的の動作を実現させます。

他の人を参考にする

先ほどのやり方はすべて自分で考えて作る場合になります。実際にはほとんどの動きは他の人の手によって実現されています。Scratchでは他の人の作品を全て、中身まで見ることが出来ます。さらにその中から気に入ったものをバックパックに入れることで自分の作品に持っていくこともできます。なのでどうしてもアイデアが出ない時や動きの実現方法が思いつかない時は一旦他の人の作品を眺めてみましょう。それが出来るのもScratchを使用するメリットです。様々な作品の中から自分の気に入ったものを探し出し、どの部分がその動きなのかを見つけ出しましょう。もしくは作った本人に尋ねてみるのもいいかもしれません。予期せぬアドバイスをもらえるかもしれませんし、なによりアイデアというものは一人では限界があります。複数人でアイデアを出し合うことでより良い作品を作り出すことが出来ます。そういった交流関係を気付いていける環境がScratchには整っています。

完成した作品をどうするか

上記で述べた作業を何度も繰り返していくことで自分の納得できる作品が出来上がったかと思います。その作品をそのまま自分だけで楽しむものとして終わらせるのもいいですが、他の人と共有してみてはどうでしょうか。Scratchでは簡単に他の人と作品を共有できます。先ほど他の人の作品を参考に、と書きましたが今度は自分が参考にされる番になるのです。しかし、参考にされるだけでは終わりません。他の人が自分の作品を実際にプレイし、感想を言ってくれます。感想はクリエイターにとって一番うれしい反応になります。頂けた感想を糧に更に面白い作品を作るためのモチベーションにしていきましょう。もしくは完成した作品に手を加えてより面白くすることもできます。公開した作品を少しづつ改良していくことをバージョンアップと呼んだりもします。ゲーム製作の最終目標は面白いゲームを作ることです。完成した後もより面白くするための政策は続いていきます。

2020/12/01

かしはら市 PGA プログラミング教室 Scratchレッスンについて

初めての方にScratchを勧める理由・1

プログラミングを初めてする方や小学校低学年の方にはScratchをまずは受講するようおすすめしております。いきなりJavaScriptやHTML、C言語等を学ぼうとすると考え方の基礎や処理の仕方を覚える前にまず立ちはだかる壁としてコーディング作業があります。コーディングとはプログラムを実際に各言語のルールに合わせて記述することなのですが、ほとんどの言語が英語ベースです。英語が苦手な人はこの時点でかなり心が折れそうになるかと思います。さらに、学校で教えてもらえるような英単語ではなく専門的な単語が多くあります。さらに普段PCで使わないような記号等も列挙しており、見ただけでしり込みしてしまいがちです。考え方や処理の順番など、プログラミングの基礎がわかってくれば一気に理解度は進むのですがそれまでが非常に遠いです。そこで活用されるのがScratchになります。こちらはプログラミングの基礎を学ぶために開発されたものになります。

初めての方にScratchを勧める理由・2

では何故Scratchがプログラミングの基礎を学ぶのに最適なのでしょうか。それは、Scratchにはコーティング、つまり文字を書く必要が無いからです。各種命令を実行するためのブロックを処理する順番に並べていくだけで簡単にプログラミングを行うことが来ます。さらに日本語にもしっかりと対応しているため、目標の動きをしっかりと把握し、文章にすることが出来ればその日本語の通りにブロックを用意し、順番に並べることでプログラムがほぼ完成します。この目標の動きを把握し、文章化するという作業がプログラミングで最も重要な作業であると言っても過言ではありません。なのでScratchでのレッスンではこの作業をしっかりと意識してもらえる様務めております。お手本を見てそれを再現するのが基本的な流れですが、そのお手本はどのような動きをしているのかを意識してもらい、実行するためにそれまでに学んだものを駆使していく、という作業に慣れてもらえたらと思っております。

Scratchで教える事 座標について

Scratchをまず教えることは座標の概念です。平面上の位置を確定させるために必要な情報が数字2つであると説明します。ここで大事なのは座標そのものではなく、あるものを確定させるために必要な情報が何なのかを意識s手貰うことです。プログラムでは様々な情報をもとに動きを決めます。最終的にさせたい動きに必要なものは何なのかをしっかりと意識してもらうために、まず位置を決める座標について解説しています。そのあとは座標の数字の変え方やコスチュームの変更のさせ方を指導し、スプライトを好きな位置に表示させられるようになってもらいます。位置を好きに変えられる、どのように変化させれば良いかを把握できるようになってもらうことで他の情報を触る際にも活かしていけるようになります。また、座標の考え方は実際にプログラミングをしていく上で頻出するのでここで慣れておいてほしいという思いもあります。

Scratchで教える事 メッセージについて

メッセージとは、Scratch上での各スプライト間での情報のやり取りになります。Scratchを知らない人にはちんぷんかんぷんだと思うので簡単に説明しますと、登場人物Aが何かをしたときに登場人物Bが何かをする、という命令を作りたい場合、Aが行動したあとに合図を出します。この合図がメッセージと呼ばれるものです。この合図は登場人物全員が同時に聴きます。Bも勿論その合図を聞きます。なのでBには合図を聞いたときに行動する、と命令しておきます。これで予定通りの動きになります。このメッセージはプログラミングにおいてすごく重要で、ある事象と別の事象を関連付けて考え、全体を通して命令を繋げていくやり方の練習になります。実現したい動きが1つで完結している場合は必要ありませんが、複数の要素が関係してくる場合も多々あります。その際にこのメッセージを使った処理を思い出していただけたらスムーズに記述できるかと思います。

Scratchレッスンの目標

Scratchを使ったレッスンの最終目標ですが、それはプログラミング的思考の習得です。目的に合わせて必要な命令や情報をそろえ、それらを適切な順番で処理出来る様に組み合わせていく流れを習得してもらうことがScratchレッスンの目標になります。必要な情報が何なのかを得る訓練が座標の流れになりますし、それらを適切に処理していく際に手段の一つとして使えるものがメッセージになります。その他にも多数の命令ブロックや条件ブロックをレッスンしていきますがそれらはすべて手段の一つです。最終的には自分で取捨選択し、最適な順番で処理するようになってもらえたらと思います。プログラミング的思考をマスターできたな、と感じた生徒様には引き続きより本格的なScratchでのゲーム製作に挑戦してもらったり、各種プログラミング言語の習得に進んでもらったりしています。逆に習得が不十分だなと感じた生徒様には足りない部分を復習として再度レッスンを受けなおしていただく場合もあります。

2020/11/28

橿原市 初心者・子どもにおすすめのプログラミング学習

今、プログラミングを学ぶ理由

現在、小学校や中学校等の義務教育期間内にプログラミング学習を必修化させる動きが来ています。それに合わせて就職や転職活動をされている方の間でもプログラミングを学び、習得したいという方が増えて来ています。理由はそれぞれで少し違ったりします。小学生に学んでもらう理由はプログラミング的思考の習得の意味合いが大きく、プログラミング学習という名前ですが実際にプログラミングをせずに考え方だけ学ぶ方針の学校もある程です。中学生以降ではちょっとずつプログラミングに触れていく内容の授業も出てくると思います。ただ、ここでも実際にプログラムを組んでいくのではなく身の回りに使われている技術を知る目的が大きいです。現在ではコンピュータを活用した機械が身の回りに溢れています。これらをより活用していくために最低限の知識を詰めていくのが中学校でのプログラミング学習になります。そして最後に大人の方々ですが、日本はAI技術が遅れています。特にプログラマーの不足が深刻化していますので求人は一杯あります。なので就職にとても有利になっています。

身の回りにあるプログラミング技術の結晶

先ほど述べたように現在、身の回りには様々なIT技術が活用されています。最もイメージしやすいのはパソコンです。またスマートフォンやゲーム機などもプログラムが組まれていることが分かりやすいかなと思います。意外と気付かないところでは各種家電や自動車等です。これらもある一定の動きが予めプログラミングされています。このように身の回りに存在するあらゆるものにプログラミング技術は使用されています。これらを普通に使う分には特に専用知識はいりません。しかしこれらのコンピュータは仕組みを理解することでより便利に、より快適になります。これからの社会ではさらに様々なコンピュータが増えていくのでそれらに対応できるよう今の内からしっかりとプログラミングについて把握していく必要があるのです。プログラミングを実際に出来るようになる必要はまだありません。どのようにプログラムが作られるのか、どのようにして動きを命令しているのかを把握しましょう。

子ども・初心者がプログラミングを学ぶには

プログラミングを学ぶ際にはまず目標を決めましょう。プログラミングをしっかりと理解し、プログラムを自作出来る様になるまで頑張るのか、プログラミング的思考の取得を目指し、将来に役立てる様にしていくのか、取り合えず流れだけつかんでみて楽しそうだったら続けようかな、等です。そしてその目標達成を目指していく際に自分がどの程度プログラミング的な考え方を出来るのかをチェックします。少しでも躓きそうだと感じたらまずはScratch等のプログラミング教育ツールから触るのがおすすめです。Scratchではプログラミングの中でも特に躓きやすい”英語での記述””文法”の2つが簡略化されています。文字を書いていくのではなく命令に応じたブロックを並べていくので視覚的、感覚的に分かりやすくなっています。実際のプログラムと同じく上から順番に処理し、ループや条件分岐などもしっかりと設定できますのでプログラミング初心者の方や子どもでもかなり本格的なプログラムを作成できます。

Scratchでプログラミングを学ぶ際に意識すること

プログラムを自作するのが目標の場合、Scratchを学び、ある程度プログラミングの流れをつかめたら次は本格的に自作プログラムの作成に入るはずです。その際に必要なプログラミング言語も確認しましょう。動きに合わせて最適な言語があるはずです。もしくはScratchで実現させる選択肢もあるでしょう。このように目的に合わせて必要なものを自分で選択していく必要があります。これはScratchを学ぶ際にも意識していくべき考え方になります。基本的にお手本を再現していくのがScrachのレッスンになります。お手本の動きをしっかりと確認し、どのような命令が必要なのか、どのような組み合わせをしていけばいいのか、どのような順番で実行していくのか等、プログラミングの基本的な考え方はScrachでも学べます。この流れをしっかりと掴むことで別の言語でもスムーズにプログラミングをしていくことが出来ます。

初心者の方におススメのプログラミング言語・JavaScript

上記ではプログラミングをまったく触ったことのない人向けのおすすめとしてScratchをお勧めしました。しかしScratchは元々が子ども向けですので中学生以上の方には少し子どもっぽいかもしれません。学べる内容的にはScratchでも問題ないのですが、考え方を分かっている人には実際のプログラミング言語を触っていく方が楽しいかと思います。その中でよくおススメされるのが”JavaScript”です。この言語は主にWebページに動きをつける際に利用されています。HTMLやCSS,PHPも並行して学べるとより良いのですが初心者にはさすがにヘビーですのでまずは一つJavaScriptに絞ってみましょう。おススメの理由ですが、開発環境を整えるのがとても簡単だということです。PCに元から入っているメモ帳でも作ることが出来ます。もちろんメモ帳では不便なのでより便利なテキストツールを探していくべきですが、最初のハードルが低いのは利点です。とにかくプログラミングをしてみたい、コーディングの雰囲気がつかみたいという方にはJavaScriptをおススメします。

2020/11/26

かしはら市 初心者がプログラミングを習得するためには

プログラミングに英語の知識は必要か

現在、世界ではIT産業及び情報化社会が急速に発達しています。ここ日本でもその傾向は変わらず、身の回りにはコンピュータを用いたものが増え、あらゆる情報が飛び交いそれらを自由に閲覧出来るような世の中になってきています。しかし、急速な発達に反して日本では優秀なIT技術者、プログラマーが不足しているという現状があります。理由はたくさんありますがその一つにプログラミング習得への苦手意識、ハードルの高さがあります。専門用語の数々やプログラミング言語のほとんどが英語ベースであるため、元来英語が苦手とされている日本人には特にハードルが高く感じてしまいます。ただ、実際にプログラミングに触れていくと英語の知識はそこまで必要では有りません。もちろん詳しい方が誤字脱字のミスが減ったり初見である程度理解出来るといったメリットがあります。ただ、分からない単語は調べればいいですし英語の文法なんかは全く必要ないです。

実際に必要なスキル その1

では実際に必要なスキルは何になるのかと言いますと、まず第一に国語力です。意外に思うかもしれませんがこれはかなり重要なスキルになります。何故ならば、実現したい目標には何が使われているのか、どのような動きなのかをしっかりと言葉にする必要があるからです。漠然とした指示ではコンピュータは動きません。1から10まですべてをしっかりと命令してあげる必要があります。そのためにもきちんと動きの説明が出来るような国語力が必要になってくるのです。常日頃から何がしたいのか、それをするために何が必要でどの順番で処理していくのか等を頭の中で考えたり実際に文章に起こしたりしてプログラミングに必要な国語力を鍛えていきましょう。また、この話はプログラミングだけではなく、人に説明するときや自分の意見をしっかりと通したい時等、様々な場面で必要となってきます。話しの分かりやすい人になれるような力を身に着けていきましょう。

実際に必要なスキル その2

上記に続いて必要なスキルを述べていきます。国語力に続いて必要なスキルとして数字を操る力が必要になります。これは計算が出来たらいいわけではありません。何せコンピュータですので計算自体は勝手にしてくれるのです。では数字を操るとはどういう意味かと申しますと、計算式そのものを作り、自分の思い描いた通りに数字を変化させることになります。コンピュータへ命令する際、様々な数字を使っていくことになりますがそれらは自分で考えた命令に適切な範囲で、適切な変化の仕方をしてもらう必要があります。その為の範囲の決め方だったり意味のある計算式の記述だったりをしっかりとこなせる力が必要になります。学校の授業だと記述式の文章問題を解く際に使う力です。そしてこの計算式の意味を決めたり、範囲を決めたりするときに先述した国語力を使う必要が出てくるのです。これも日々の勉強の際に毛再意識の意味を考えてみたり、自分で例題を思いうかべてそれに沿った式を作ってみたりして練習していきましょう。

実際に必要なスキル その3

ここまでは学校で鍛えれるスキルを書いていきました。勿論これらは大変重要なスキルですが、更に必要なスキルがあります。それは調べる力です。プログラミングの世界は日進月歩です。常に新しい便利なものが誰かによって作られています。最終的にはそのステージに立ちたいものですが最初の内は厳しいです。自分の目標に使えそうなものを探し出し、それを活用していくスキルを最初は養っていきましょう。ただし、見たままを何も考えずに真似していくだけでは力になりませんので、なぜそれが便利なのか、なぜこのような動きが出来るのか、どのような応用方法があるのか等しっかりと仕組みを把握していくようにしましょう。最初の内は検索に時間がかかったり、何度も同じことを調べてしまうことになりますが、経験を重ねていくうちにより効率のいい検索方法を見つけ、検索した内容を自分の力にしていけるようになっていくはずです。

プログラミングを習得するコツ

プログラミングを習得するには多くの努力が必要になってきます。そんな中で少しでも早く習得するためのコツがあります。それが上3つで述べたスキルを意識することです。例えば国語力をつけるために自分の起こした行動についての説明を頭の中でしてみたり、文章問題を読んで式を立てる練習をしてみたり、そしてこの2つをより効率よくできないかを検索してみたりです。特に検索は日ごろからたくさん行っている人も多いと思います。自分が欲しい情報を探し出す力を身に着けるのを優先すると、他のスキルもついてくるかと思います。専門用語や英単語等、わからないことがいっぱい出てくるかと思いますがそれらを逐一検索し、自分の中で納得できるまで調べてみましょう。納得できなければ他のページを見たり本を読んでみたり、人に聞くのもいいと思います。悩み続けるのではなく情報を集めていく癖をつけましょう。実際、命令のコマンドや文法を全て覚えている人は少ないと思います。検索すればいっぱい出てくるのでその中から欲しいものを選ぶ選択眼を養いましょう。

2020/11/25

橿原市 小学生から始めるプログラミング Scratchで出来る事

Scratchとは

小学生に限らず、プログラミングを触ったことが無い人におススメしたいものがScratchになります。こちらはMIT(マサチューセッツ工科大学)のメディアラボにて開発されました。その開発目的は子どもたちにより楽しく、分かりやすくプログラミングに触れてもらおうというものです。なのでプログラミングを行う際に特に難しいと感じるコーティングの作業がScratchでは必要ありません。また、見た目にも分かりやすくなっているためより感覚的にプログラミングを実施していくことが出来ます。また、子どもたちの将来のために作成されたため、Scratchは無料で利用することが出来ます。ネットの環境さえ整っていれば用途を問わずに誰でもいつでも、全ての機能を利用することが出来ます。これらの特徴から日本でも子ども向けのプログラミング用教材として様々な場所で活用されています。

Scratchで出来る事

Scratchでは自分のアイデア次第で様々なことを実現させることが出来ます。実現させたいな、と思ったことはほぼ実現できるといっても過言ではないかもしれません。しかしそのような素晴らしいアイデアはなかなか一人では思いつきません。そこでScratchでは他の人たちの作品を見たり、その中身を自分の作品に応用することが出来ます。それ以外にも作品を公開することで世界中の人に見てもらい、アドバイスをもらうことも出来ます。自分一人ではなく、様々な人たちと交流し、情報を共有しあうことでより素晴らしい作品を目指していきます。なので出来る事は非常に多岐にわたります。その中でも特に人気のあるものがゲーム製作及びストーリー制作です。実在するものを再現する人もいれば完全にオリジナルの作品を作る人もいます。当教室ではそんなゲーム製作を一つの目標として指導しています。もちろん生徒様が何かしたい、作りたいというものが出来た場合はそちらを最優先し、アイデアを出し合う形に移行していきます。

Scratchでプロジェクトを作る際のコツ 目標を定める

Scratchでプロジェクトを作る際、自分の頭の中には様々な<アイデアやしたいことが浮かんでいると思います。それらを全て詰め込んでいくことが出来れば一番なのですが、実際にはそれぞれで干渉してしまったり、効率があまり良くなかったり等、問題点があとから湧いてくることがよくあります。これらを未然にある程度防ぐためにもまずは作りたい作品のゴールを明確にしましょう。どんなものが作りたいのか、絶対に入れたい動きはどれなのかを予め決めておくことで実際に必要になる動きが少しずつわかってくるかと思います。明確にする際、文章にしてみるのも有効な手段です。文章に直す作業の中で自然に情報も整理していけるはずです。実際の現場でも仕様書と呼ばれる、目標を明確にして必要な物を列挙した資料をまず作成します。また、目標がわかっているので他の人の作品を参考にする際にもどのような作品を見ればよいのか、その作品のどの動きを参考にするべきかを絞ることが出来ます。

Scratchでプロジェクトを作る際のコツ 1つずつコツコツと

目標を決め、必要な物を洗い出したら、次はそれらを実現していきましょう。このとき最も気を付けなければいけないことは途中で動作の確認を挟むことです。最後まで確認せずに最後まで作った場合、エラーや動作不良の原因を探るために1つずつ見直していく必要があります。また、直したと思ったら別の不具合が発生する場合もあります。このような事態を防ぐためには1つ動きを完成させるたびにそれ単体で動作を確認し、問題が無いことを確認しましょう。そうして動作を作り終えてからそれらを組み合わせてチェックしていきます。このように段階を踏んで少しずつ進め、間にチェックを何回も挟んで作業を進めることで確実にゴールへと近づいていくことが出来ます。これはScratchに限らずプログラミングをしていく上でも重要になってきます。焦らず丁寧にチェックを重ねていき、完成を目指していきましょう。

作品が完成したら

上記の作業を何度も繰り返し、作品が完成したら他の人に見せてみましょう。いきなり公開するのが怖い場合はお友達や家族、学校の先生等に見せてみましょう。様々な反応をもらえるはずです。褒められたり笑顔になってもらえたら素晴らしい作品が出来た証拠です。もし次を作るなら特に喜んでもらえたところを意識しつつよりクオリティを上げるためにさらに試行錯誤していきましょう。また、あんまり楽しめてもらえなかった場合でも大丈夫です。何が面白くなかったのかをしっかりと聞きましょう。その部分を直せば素晴らしい作品になるはずです。こういった他の人の意見というのは非常に重要です。素晴らしい作品にしていくためにはどうしても必要になってきます。慣れてきたらScratch上の他の人にも公開したり、逆に他の人の作品にコメントをつけたりしてみましょう。お互いに切磋琢磨していく環境がしっかりと整っているのがScratchですので、有効活用していきましょう。

2020/11/17

橿原市 プログラミング教育を小学生の間に学ぶ理由について

プログラミングとは

2020年度以降から本格的に小学校や中学校にてプログラミングが必須科目に入ってきます。これからの時代、コロナウィルスの影響もあり、よりネットワーク上でのやりとりやプログラミング関係の知識、技術が問われる時代いなっていくと思われます。今回はそんなプログラミング教育について、さらに言うとそもそもプログラミングとは何なの、というところから説明していきたいと思います。プログラミングとはコンピュータに対して決められた順番、ルールに応じて指示を出し、コンピュータに自分の思い描いた通りの動きをさせることを言います。コンピュータにさせたい動きをしっかりと把握し、それを実行できるように全体を設計していきます。本番の前にチェックをし、うまくいかなければ何がダメで解決策どうすればよいかを考えていきます。これらを繰り返し、最終的に自分の思い描いた通りの動きにすることがプログラミングの目標になります。こうして出来上がったものが私たちの生活をより便利にしてくれています。

小学校でのプログラミング教育とは

以上で述べた通りプログラミングの作業は大変です。専門的な知識が必要になることも多数あります。小学生の内に必修化されるプログラミング教育とはどのような内容か、説明していきます。小学生で学ぶ内容はプログラミング作業そのものよりも、物事を解決に導くための論理的な考え方であるプログラミング的思考になります。物事を論理的に考え、より効率的に問題解決を目指していく考え方を小学生の間から少しずつ習得していくのが狙いになります。しかしプログラミング必修化と言っても教科としてプログラミングが追加されるわけではありません。既存の科目の中にプログラミングの内容を織り交ぜていく、という形になります。ですので各学校のPC、インターネット環境などの現状に合わせて何年生のどの科目で取り組んでいくか、が変わってきます。小学高出のプログラミング教育はプログラミングに触れるのが目的ではなく、あくまでプログラミング的思考の取得を目指すのが目的となっています。

プログラミング的思考とは

プログラミング的思考とは先ほど述べたプログラミングの一連の流れの様に目標の達成に必要なものを把握し、それに合わせてどのような作業が必要なのか、どのような組み合わせがより効率がいいか、どこがおかしくてどのように改善していけばいいのかといったものを論理的に考えていく思考方法になります。必要な動きが何なのかをそれぞれ分けて考え、動きに対応した命令を記述していき、それらを組み合わせて上手くいくかを試していきます。これらすべてを論理的に解決までもっていくことがプログラミング的思考になります。大事なのは目標を最初にしっかりと定める事です。目標に合わせて必要な動きを確認し、それらに合わせた命令を一つずつ設計していきます。一つずつが完成したら次はそれらを組み合わせます。成功しなかったらその原因を考え、解決策を見つけていきます。この考え方はプログラミングに限らず様々な職種での問題解決に必須のスキルなります。

なぜ今プログラミング教育が必修になるのか

上記で述べた通り、プログラミング的思考は様々な場面で役に立つ思考方法です。しかしこの思考方法は一朝一夕で身につくものではありません。なので小学生の内から意識してプログラミング的思考に挑戦することで、将来様々な問題解決に役立てるような人材に育ってほしいという思いがあります。しかし、それ以上の理由として、現在身の回りにコンピューターを用いたものがありふれていることです。仕事や家事、移動手段から教育現場、娯楽にまでコンピューターが使用されています。もちろんこれらを利用することで生活水準を大幅に向上させることが出来ますし、問題点の解消にも役立ちます。しかし、それらを正しく使うためには仕組みを知る必要があります。コンピューターはプログラムに従います。プログラミングに触れる機会を増やすことでコンピューターに命令できるようになるスキルも見につきやすくなり、よりコンピューターを活用することが出来るようになります。これがもっとも大きな理由であると言えます。

小学生でも出来るプログラミングツール”Scratch”

プログラミングと聞くと英語がずらっと並んでいたり、専門的な知識が必要で小学生にはとても難しいイメージがあります。しかし、Scratchというツールを用いればプログラミング初心者でも、小学生でも簡単にプログラミングを行うことが出来ます。理由は大きく分けて2つあります。1つ目に日本語に対応していることです。すべての命令や動き、情報が英語ではなく日本語で記載されています。また、ひらがなにも対応しているため感じを習っていない年齢のお子様でも日本語の意味さえ分かってしまえばある程度の動きを理解することが出来ます。2つ目にプログラムの流れが視覚的に分かりやすいことです。Scratchでは命令の1つ1つがブロックで表現されており、それらを並べることでプログラミングしていきます。そして上から順番にブロックに記載された命令を実行していきます。さらにブロックには色や形にも意味があるのでより見た目でわかりやすくなっています。これら2つの理由からプログラミングを最初に触れる際はScratchがおすすめされています。詳しい使い方や仕様については別ブログにて解説しております。

2020/11/03

橿原市 プログラミングレッスン Scratchの仕様

Scratchについて

Scratchとは本来複雑になりがちな”プログラミング”と言うものを視覚的、感覚的に分かりやすくしたものになります。また、プログラミングをするための開発環境や専用のアプリケーション等をインストールする必要もありません。ブラウザ上ですべて完結しています。サービスも無料ですべての機能を使うことが出来るためお子様やプログラミング初心者の方でも安心して使用することが出来るソフトウェアになります。プログラミングだけではなく様々な人とコミュニケーションを取ることもでき、ネット上での他人との交流の仕方やネットリテラシー、マナーを学ぶことも出来ます。また、たくさんの人とアイデアを出し合うことでより良い作品を作り上げることが出来ます。自分一人で作り上げることも素晴らしいですが、仲間たちと一つの作品を完成させる達成感もまたひとしおであり、それが次の作品を作るモチベーションにもつながっていきます。

Scratchの始め方

Scratchを始めるにあたって特別必要なものは有りません。PCとネット環境さえあればいつでも利用することが出来ます。また、オフライン状態でも利用可能なダウンロード版もあります。こちらは一度PCにダウンロードしておくだけでいつでもScratchによるプログラミングを行うことが出来ます。肝心の始め方ですが、まずScratchの公式ページへ移動します。その後、右上に存在する「Scratchに参加しよう」をクリックし、画面の指示に従ってアカウントを作成していきます。アカウントを作成しないと作品をネット上で保存することが出来ません。更に他の人との交流なども出来なくなってしまいますのでアカウントは極力作りましょう。アカウント作成以降は自由にScratchを使っていきましょう。いきなり作品を作り始めるのもいいですし、まずは他の人の作品を見て、いいものがあれば中身を見てまねしていくのもいいと思います。

Scratch上でのコミュニケーションについて

Scratchでは世界中の様々な人たちが自分の作品を公開しています。そしてその作品のソースを確認するのも、自分用に引用していくのもScratchでは自由です。むしろそうして他の人たちの良い部分を吸収していき、自分でより良い作品を作っていくことをScratch運営は期待しています。しかし、やみくもに作品を引用していくのはマナー違反です。作品を見て引用したいなと思ったら勇気を出してコメントを書き込みましょう。一言「引用させていただきました!!」で大丈夫です。もしもう少し勇気を出せるなら次は褒めてみましょう。面白い作品を見つけたらそのコメントに「面白かった!!」と打ち込む、これだけでコミュニケーションの輪が広がります。また、自分の作品に意見を出してくれる人が現れるかもしれません。そういう人にはお礼のコメントをしてあげましょう。「アイデアを出してくれてありがとう!!試してみます!!」ポイントは不快にならないようなコメントをすることです。顔が見えないため、より言葉を慎重に選ぶ必要があります。

作品の公開について

Scratchで作成したものは自由に公開することが出来ます。しかしそれをするためにはアカウントのメールアドレスを認証する必要があります。最初のアカウント作成時に入力したメールアドレス宛に確認のメールが届いているのでそちらから認証してあげましょう。これで作品を公開し、世界中の人たちに見てもらうことが出来るようになります。最初はほんの少しの人にしか見てもらえないかもしれませんが、自分からたくさんの人の作品を見に行き、コメントを残して行くことでその人に自分の作品を見てもらえる可能性を高めることが出来ます。そしてその人たちに作品の良いところやこんなものがあればいいなというアイデアを出してもらい、作品の完成度を高めていきましょう。その際、実行できるか不安な動きがあった場合、アドバイスを求めたり、他の人の作品を参考にしていきましょう。これを繰り返していくことでより自分の思い描いた通りの動きをプログラミング出来るようになっていくはずです。

Scratchを学んでいくうえで意識すること

Scratchでは自分の好きなようにプログラミングをしていくことが出来ます。しかし、初めてプログラミングをしよう!!となった際、何から始めていいかわからないとおもいます。そんな時はまず他の人の作品を見てみましょう。いくつか見ていくうちに自分の好みの作品が見つかると思います。その作品の中身を確認し、どのブロックがどの動きを作っているのか、自分ならどのように組むか、などを考えていきます。これを様々な作品で行っていき、自分の考えた作品を生み出していきましょう。また、先に自分で考えているアイデアがある場合、そのアイデアを文章にしてみましょう。旗を押したらどうなるのか、キーを押したら、クリックしたら等、考えられる限りを文章にまとめていき、それをScratchで一つずつ再現していきます。もしわからないところがあれば他の作品を参考にしたり、先生に聞いてみたりしましょう。そうして作品のクオリティアップを目指していきましょう。