はじめよう Scratch(スクラッチ)!身近な子どもとプログラミングの世界へようこそ

プログラミングのはなし Scratch
プログラミングのはなし

きょうは子どもとプログラミングについて学びます。

今、町で子どものプログラミング教室が大はやりです。子どもはプログラミングにきょうみを示します。

じゅけんえいごは役に立たなかったにしても、インターナショナル英語がどんどん広がっているように、プログラムげんごもおそらくそうなります。

「オタクになっては」としんぱいするむきもありますが、オタクの99%はゲームオタクです。ゲームもプログラムでできているとわかれば子どももきょうみをもつでしょう。

きょうはあなたと、子どもとプログラミングについて学習します。

昔から「読み書きそろばん」といいます。これらと「コンピュータ」は同じでしょうか?
私の時代はコンピュータはありませんでした。今はなくてはならないものです。それぞれ異なる分野で重要な役割を果たしています。私は三重県津市在住のそこそこ年取っている男性です。

1.コンピュータきょういくのじゅうようせい

小学生とプログラミング
小学生とプログラミング
taka
taka

小学校にプログラミング教育が導入されようとしています。

ところがげんばももり上がっているのかというと、なかなかすんなりとすすむようでもないみたいです。学校のゆうせんじゅんいからすると、プログラミング教育はそんなに高くないようなのですね。

世の中がへんかしており、教育もかわってゆくのですが、大人たちがうけていない教育をこどもたちに教えなきゃいけない。これはたいへんなじだいですよ。社会のごくいちぶの人がぜんぶを知っていて、たいはんはほとんど知らないというじょうきょうはとてもこわいことです。

たとえばかんたんに人をだませます。できる人がほんきになればかなりこわいことができます。かそうつうかでなんおくえんものとうなんじけんがいくつもありましたが、ゆめの中の話じゃないですからね。知らない人からみたら、おばけがぬすんだと同じようなもんですよ。でも、知ってる人にとってはちゃんとりくつがあってぬすんでいるんですから。

というわけで、コンピュータのきそはもちろん学校でも教えるべきですが、それいぜんの話として、すでに社会でコンピュータを使っている大人たちがきちんと学ばないといけないということでもあるのですが、これがなかなかのくせものです。

mika
mika

おとなも学んでいなければならないのね。

1.コンピュータの秘密

taka
taka

コンピュータってなんだろう?

  1. まず「こうそく」のぶぶんがじどうしゃなんかとはくらべものにならないということです。さらにわかりにくくさせているのが、コンピュータが小さくなったことです。ようするに、コンピュータはきぼのちがいが大きすぎて、なにかにたとえてせつめいするのがとてもむずかしいのです。
  2. それから、コンピュータのなかみを知らないのに、ただじょうずに使えるようになった人、こういう人の目の前には、とてもりかいしやすいコンピュータかも知れませんが、その人が知っているのはコンピュータのせいしつなのか、それともコンピュータの上で動いているアプリのせいしつなのかということです。
  3. ほんらいのコンピュータはとてもたんじゅんなことしかできず、とてもかしこいとはいえません。ところがわれわれのそうぞうをはるかにこえてたいりょうな計算を組み合わせてこうそくに計算させることで、とてもかしこく見えるようにも動かせるのです。

このように、コンピュータにもちゃんとじゅんじょたてて学ばなければならないきそがあるんだということです。まずはそういうもののそんざいを知ってもらうところからですね。大人たちにとって、学校で習わなかったことですが、学ぶのがおそすぎたということはありません。今からでも学ぶべきでしょう。

社会ぜんたいにコンピュータへのりかいが広まった後であれば、小学校のプログラミング教育はもっとスムーズに進むんじゃないかと思います。

mika
mika

順序が逆なんです。

「これからの未来はどうなってきの?」
「それについて知るには、まず、コンピュータのしくみをきちんとしらなくちゃいけないよ」

中学生のかなちゃんとはかせのかけあいで、コンピュータのしくみついて楽しくわかる! トランプやカードをつかってコンピュータの動きをたいかんしながら、

「どんなふうに動いているの?」
「どうやって計算しているの?」
「プログラミングってなに?」といったぎもんを本書でかいしょうしましょう。

2.コンピュータ教育の重要性

taka
taka

コンピュータは現代社会においてますます増加しています。

コンピュータぎじゅつは、あらゆるぶんやで利用され、生活や仕事のあらゆるそくめんにしんとうしています。したがって、コンピュータにかんするきそてきなちしきを持つことは、こじんのキャリアにおいてきわめてじゅうようです。

さらに、コンピュータ教育は、次のようなじゅうようなスキルをいくせいすることができます。

  1. 問題かいけつのうりょく: コンピュータ教育は、問題をかいけつするためにろんりてきにしこうするのうりょくをそくしんします。
  2. クリエイティブしこう: コンピュータにかんするちしきを持つことは、クリエイティブなアイデアをうみ出すためのツールとなります。
  3. コミュニケーションのうりょく: コンピュータぎじゅつは、コミュニケーションのしゅだんとしても利用されるため、コンピュータ教育はコミュニケーションのうりょくを高めることができます。
  4. デジタルリテラシー: コンピュータ教育は、デジタル世界でひつようなリテラシーをみにつけることができます。

また、コンピュータ教育は、じょうほうぎじゅつのしんぽがますますはやくなる現代社会において、情報にアクセスするためのじゅうようなしゅだんとなります。コンピュータ教育は、個人のキャリアはってんにひつようなスキルをいくせいするだけではありません。

mika
mika

社会にとっても重要な役割を果たしています。

2.プログラミングは、読み書き・ソロバンと同じか?

中学生とプログラミング
中学生とプログラミング
taka
taka

学ぶのは小・中学校のうちがよいのです。

1.プログラミングは、読み書きやソロバンとは異なる特性を持つ活動

読み書きは、言語や文字を使って情報を伝えるためのスキルです。文章や文法の理解、語彙の知識、表現力などが求められます。一方、プログラミングはコンピュータやデジタルシステムに指示を与えるための手段です。コンピュータは特定の命令セットやプログラミング言語を理解し、その命令に従って動作します。

ソロバンは、計算や数値処理を行うための道具です。ソロバンを使うことで計算が容易になり、数値の演算や計算ミスの軽減が可能になります。一方、プログラミングはコンピュータに特定の計算や処理を自動化させるための手段です。プログラミングによって、複雑な演算やデータ処理、問題解決をコンピュータに任せることができます。

プログラミングには、読み書きやソロバンとは異なる学習や思考の要素が含まれます。プログラミング言語の文法や構造の理解、アルゴリズムの考え方、問題解決の能力などが重要です。しかし、プログラミングも読み書きやソロバンと同様に、練習や経験を通じて上達することができます。

読み書きは言語を理解し、文章を作成するスキルを指し、ソロバンは計算を行うための道具です。

プログラミングはコンピュータやソフトウェアを制御するための手段であり、プログラミング言語を使用してコンピュータに命令を与えます。プログラミングには特定の文法や構造があり、それを遵守しながらロジックを構築する必要があります。

プログラミングは、問題解決やアルゴリズムの設計などを含む創造的な活動でもあります。プログラミングを学ぶことで、実際のソフトウェアやアプリケーションを開発したり、自動化したりすることができます。

したがって、プログラミングは読み書きやソロバンとは異なるスキルや活動ですが、それぞれ異なる分野で重要な役割を果たしています。

高校生くらいになると、生徒は受験をいしきしはじめて、プログラミングのような新しいことにきょうみをしめさなくなるものです。

プログラミング学習をするには、一人一台の端末がひつようです。学校ではプログラミングを教える先生がふそくしています。政府は1機100億円もする戦闘機を100機いじょうも買うよりこういうところにこそお金をつかってほしいものです。

子どものしょうらいにむけて夢をもってはじめの一歩をふみだしましょう。

mika
mika

どこに行けば教えてくれるの?

CANVAS | 遊びと学びのヒミツ基地
CANVAS(キャンバス)は、こどもたちの創造・表現力をテーマにしたワークショップ・イベント、セミナーを多数、企画・開催しているNPOです。
小学生・子ども向けのプログラミングスクール | プログラミングの習い事 | Tech Kids School(テックキッズスクール)
Tech Kids School(テックキッズスクール)は、ゲーム開発やアプリ開発など、デジタルのモノづくりを楽しく学ぶことのできる、小学生・子どものためのプログラミングスクールです。

2.IT が苦手な人でも大丈夫!

「プログラミングができるようになりたい!」という人が最近増えています。プログラミング教育が学校教育にもとりいれられるようになりました。

参照:生物系がゼロから始めるIT技術

また、たの言語では書かなければいけない「おまじない」のようなコードを書かずにすむので理解もよういです。たの言語では、たとえば JavaScript をじっこうするには、HTML  というたの言語をいっしょに書かなければなりませんし、たの言語でも、じっさいのめいれいぶんいがいに書かなければならない「おまじない」がいろいろあるのです。

『しょしんしゃでも「コードが書ける!ゲームづくりで学ぶはじめてのプログラミング』では、rocessing によるプログラミングをゼロから学ぶことができます。ぜひ、あなたもこの本でプログラミングの世界に足をふみ入れてみてください。

本書では「コード」を書いてゲームをつくりながら、プログラミングを楽しく学んでいきます。パソコン上で Processing をつかいますので、Java ペースのプログラムを、めんどうなせっていなしで、ちょっかんてきにどんどん書きながらりかいすることができます。

Python や JavaScript はむずかしくて手がだせなかったという人でも、この本ならだいじょうぶ。小学校高学年いじょうのどなたでも読むことができます。Scratch ではちょっとものたりない人も、ぜひためしてみましょう。

このほか、無料のプログラミング道場がぜんこくでかいさいされています。

3.Scratch スクラッチはビジュアルプログラミング言語

MITメディアラボがかいはつした初心者にもわかりやすい言語です。

Scratchでは、ブロックとよばれるコマンドを組み合わせて、かんたんにプログラムをさくせいできます。ブロックは、文字や数字、音声、がぞうなどをそうさするコマンドがよういされており、かんたんなゲームやアニメーションを作れます。

Scratchは、初心者にもわかりやすく、コードを書くことなくプログラミングのきそを学ぶことができます。また、自分でこうかいしたり、たの人が作ったプログラムをさんこうにもできます。

Scratchはビジュアルプログラミングげんごです。テキストベースのコードをきじゅつするかわりに、ビジュアルなブロックを組み合わせてプログラムを作れます。

ScratchはMITメディアラボがかいはつした教育むけのビジュアルプログラミング言語であり、おもに子どもや初心者むけにデザインされています。プログラミングのきほんてきながいねんやろんりを学ぶのにてきしており、ちょっかんてきなブロックを組み合わせることで、アニメーション、ゲーム、ストーリーなどのプログラムを作れます。

  1. 直感的なプログラミング: Scratchでは、そうさにたいおうするブロックをえらんで組み合わせることでプログラムを作ります。テキストベースのプログラミング言語よりもちょっかんてきでわかりやすいため、初めての人でもあつかいやすいです。
  2. 視覚的な表現力: Scratchは、ビジュアルなようそやグラフィックスをかつようすることができます。これにより、アニメーションやゲームのせいさくなど、しかくてきなひょうげんりょくをじゅうししたプログラムを作れます。
  3. 共同作業と共有: Scratchのコミュニティでは、たのユーザーが作ったプログラムやプロジェクトをきょうゆうできます。たの人の作品から学ぶこともできますし、自分の作品をきょうゆうすることでフィードバックをえられます。
  4. 学習効果: Scratchは、プログラミングのきそてきながいねんやロジカルシンキングを学ぶのにてきしています。ビジュアルなひょうげんやインタラクティブなそうさによって、プログラミングの楽しさとそうぞうせいをひきだせます。
mika
mika

楽しみながらプログラミングを学べるのね。

3.Scratch スクラッチの基礎

Scratch を学ぶ子どもたち
Scratch を学ぶ子どもたち

スクラッチの基礎について図解入りで説明します。

スクラッチは、プログラミングの初心者向けに作られたブロックベースのプログラミング言語です。以下にスクラッチの基本的な要素と、それぞれの要素の説明を示します。

ステージ(Stage): スクラッチのプログラムの舞台となる領域です。ステージには背景やキャラクターを追加することができます。ステージとは、スプライトの後ろの背景画面のことです。プログラミングの結果が表示される場所でもあります。初期設定では、真っ白ですが、自由に切り替えたりもできます。ステージ上にスプライトを自由に配置することができますが、ステージより大きいサイズのスプライトは配置することができません。

スプライト(Sprite): スクラッチのキャラクターです。スプライトはステージ上で動き回ることができます。Scratchのプログラムで動かすキャラクター、地面、建物、木、雲など、画面に表示する部品すべてです。Scratchでは、スプライトの1つ1つに機能を追加するイメージでプログラムを作成しています。

スプライト
スプライト

ブロック(Block): スクラッチでは、ブロックを組み合わせることでプログラムを作成します。ブロックには様々な機能があり、イベント、制御、動き、外観などのカテゴリに分かれています。

  • 同じ処理をまとめて、複数の場所で使う
  • 長いプログラムの一部をまとめて見やすくする
ブロック
ブロック

スクリプトエリア(Script Area): スプライトに対して実行する命令(ブロック)を組み立てる場所です。ブロックをスクリプトエリアにドラッグアンドドロップすることで、スプライトの振る舞いを制御します。

スクリプトエリア
スクリプトエリア

これらの要素を組み合わせてプログラムを作成する流れは以下の通りです。

  1. ステージを準備します。
  2. スプライトを追加します。必要に応じてスプライトに外観を設定します。
  3. スクリプトエリアにブロックをドラッグアンドドロップして、スプライトの振る舞いを作成します。
  4. プログラムを実行して、スプライトが予定通りに動作するか確認します。

以上が、スクラッチの基礎的な要素とその使い方の図解入りの説明です。スクラッチは視覚的で直感的なプログラミング言語であり、初心者にとっては理解しやすいものです。ぜひ試してみてください!

あとがき

育てるをローマ字で書くと「sodateru」、そこから「s」を取ると「odateru」おだてるで「育てる」とはs(ちょっと)おだてること。

人を育てるとはちゃんと評価して上げる事ですヨネ。自身も怒るより褒める方がきもちがいいし。今年は周りの人々にあれやこれや文句をいうのではなく、よりところ、素敵なところをどんどん褒めるように心がけたいと思っています。笑顔も忘れずに。

あそびと学習をくべつしないことですね。だいじなことは、子どもたち自身がやりたいことを見つけ、自由につくるなかでしこうさくごし、みずから学ぶもくてきをみいだすことだと思います。

あれかじめつくるべきゴールが決まっていて、子どもたちに「この通りやりなさい」としじするのではじゅうらいの教育方法とかわりません。

たとえば、アニメをつくるかていで思い通りにうごかなかったとき、げんいんをかんがえ、みずからたいさくをしらべ、くふうすることがこんごの学習につながるのではないでしょうか。

Scratch について、悩みや疑問がありましたらご自由にコメント欄に投稿してください。(コメント欄はこの記事の最下部です)。いただいたコメントはすべて拝見し、真剣に回答させていただきます。

コメント

何なりとお申し付けください。