Logical thinking

プログラミングで育む論理的思考力

プログラミングが手軽に体験できる Hour of Code(アワーオブコード)とは

今回は、実際に自宅で手軽に、そして気軽にプログラミング体験ができる、「Hour of Code(アワーオブコード)」についてご紹介したいと思います。

Hour of Code

Hour of Code(アワーオブコード)とは

Hour of Code(アワーオブコード)は、Code.org という NPO が推進している、コンピューターサイエンス教育運動のことで、すべての人々がプログラミングできるようにすることを目的としている為、無料で体験できるプログラミングツールが複数公開されています。一部有料となるアクティビティもありますので、今回はサイトの見方なども合わせてご紹介したいと思います。

Hour of Code(アワーオブコード)では、12月の1週間をチャレンジ期間として設定していますが、自宅で体験するのは年間を通じて可能なため、いつでも気軽に体験することができます。

また、以下の YouTube は、Hour of Code(アワーオブコード)を推進している Cord.org が設立時に公開した動画ですが、ビル・ゲイツMicrosoft)やマーク・ザッカーバーグFacebook)、ジャック・ドーシー(Twitter)などの実業家が共演しプログラミングを覚えることの重要性を説明しています。個人的に興味深い動画だったので、シェアしたいと思います。

準備するもの

Hour of Code(アワーオブコード)でプログラミングを行うために準備するものは、ChromeSafari などのブラウザがインストールされたパソコン、もしくは AndroidiPad といったタブレットです。スマートフォンにも対応していますが、画面サイズによる操作性を考えるとタブレットの方が理想です。 もしWi-Fi 接続が出来ないなどネットワーク環境が弱い場合は、オフライン版をダウンロード することもできます。

また、Hour of Code(アワーオブコード)には「アンプラグド・レッスン」という、そもそもコンピューターがない環境でも学習できるように準備されたコンテンツもあります。 CS Fundamentals Unplugged Lessons | Code.org

Hour of Code(アワーオブコード)は 課題クリア方式

では早速 Hour of Code(アワーオブコード)のアクティビティについて、ご紹介したいと思います。

子ども向けプログラミングツールといえば、有名な Scratch(スクラッチ)や、ScratchJr(スクラッチジュニア)、Viscuit(ビスケット)などがありますが、これらのビジュアルプログラミング言語のプラットフォームは、基本的に「自分の好きにコーディングできる」という醍醐味を楽しむといったことに対し、Hour of Code(アワーオブコード)のアクティビティの多くは、逆に「どうすれば目的が達成できるか」という問題をクリアすることを楽しむ課題方式です。

子どもに画用紙を渡して、「好きに絵を描いていいよ」と伝えた場合、どんどん描き進める子もいる一方、何を描いたら良いか分からないと戸惑う子もいます。そういった場合の子ども達には、ある程度、目的やゴールが明確な課題方式からプログラミングをスタートするとスムーズに進めることができるかもしれませんね。

以下は、Hour of Code(アワーオブコード)の Minecraft(マインクラフト)アクティビティにある「Minecraft Voyage Aquatic」の画面です。このチュートリアルではストーリー仕立ての解説動画を見ながらプログラミングを進めることができ、「海底遺跡からチェストを見つけましょう」といった具体的な課題が与えられます。

Hour of Code(アワーオブコード)Minecraft Voyage Aquatic チュートリアル
Hour of Code(アワーオブコード)Minecraft Voyage Aquatic チュートリアル

アクティビティの選び方

以下のリンクは Hour of Code(アワーオブコード)でプログラミングを学べるアクティビティの一覧ページです。

hourofcode.com

多くのアクティビティが表示されますが、初めは Cord.org 提供のアクティビティからスタートすると分かりやすいでしょう。以下の「図:Hour of Code(アワーオブコード)アクティビティ一覧ページ」で、赤い四角で囲んでいる「CODE」というロゴが表示されているものは Cord.org 提供のアクティビティです。

図:Hour of Code(アワーオブコード)アクティビティ一覧ページ
図:Hour of Code(アワーオブコード)アクティビティ一覧ページ

その他の、例えば「GAME BUILDER」アクティビティは プログラミング学習ゲームのCodeMonkey(コードモンキー)へ、「codeSpark Academy」アクティビティは、コード学習プログラムの「codespark」(コードスパーク)へ外部リンクします。外部へのリンクは、有料利用を目的とする試用版といった位置づけのコンテンツも存在するため、購入につなげる(アップグレードを勧めるなどの)アクションがある場合もあります。初めてのプログラミングの場合は特に、最後のステージまでクリア出来てこそ得られる達成感もありますので、まずは Cord.org 提供のアクティビティからスタートし、慣れてから外部リンクのアクティビティを色々試して、子どもに合ったプラットフォームを見つけるといった方法を おすすめします。

プログラミング言語の種類について

アクティビティ一覧ページには、アクティビティ画像の下に推奨年齢(例:小学2年生~ etc)と「Blocks(ブロック)」や「Javascript(ジャバスクリプト)」「Python(パイソン)」といった学べる言語についても表記されています。

Hour of Code(アワーオブコード)推奨年齢と言語
Hour of Code(アワーオブコード)推奨年齢と言語
「Blocks(ブロック)」とは、Scratch などでもお馴染みのブロックパーツを使用したビジュアルプログラミング言語のことで、「Javascript(ジャバスクリプト)」などは、開発現場でも実際に利用されている言語だったりします。

アクティビティによっては、複数言語を同時に見比べることが出来るものもあり、ブロックパーツでのプログラミングからのステップアップについて工夫されています。以下は、Tynker(ティンカー)という外部サイトのアクティビティですが、「Blocks(ブロック)」言語に加え、「Javascript(ジャバスクリプト)」と「Python(パイソン)」でのコードも比較できるようになっています。

Tynker(ティンカー)Dragon Blast(ドラゴンブラスト)アクティビティ
Tynker(ティンカー)Dragon Blast(ドラゴンブラスト)アクティビティ

まとめ

今回は Hour of Code(アワーオブコード)の概要部分についてご紹介させていただきました。次回はより具体的な Cord.org による マインクラフト アクティビティ体験についてご紹介したいと思います。どうぞお楽しみに!