一万円以下!中学生におすすめ自宅学習プログラミング教材3選 教員歴35年が親向けに C# も含めた比較をし、メリットデメリットを徹底解説

中学生向けプログラミング教材3選 子育てtips
 

子どもがプログラミングに興味を持っているのですが、近くにそういう教室がなくて、、、

先生
先生

自宅でするなら、micro:bit、SmallBasic、IchigoJam はどうでしょうか?

 

プログラミング教室に行かなくても大丈夫ですか?

全くの初心者ですが、、、、

先生
先生

私は自宅で「プログラミング寺子屋」という無料のプログラミング体験教室をしています。体験教室の運営を始めるときに、どんな教材を使おうかということについてかなりの時間をかけて検討しました。この記事では、そのときの最終候補にまで残った3教材を解説します。

 

その教材の購入費用はどのくらい?

先生
先生

教材やオプションの購入の有無によりますが、基本一万円以下です。

一万円以下!中学生におすすめ自宅学習プログラミング教材3選

最終候補にまで残った3教材

① micro:bit

② IchigoJam ※参考リンク タイトル最後に(1500円)と書かれていますが、間違いがなおされていないようです。

③ SmallBasic ※参考リンク 英文です。

 

micro:bit、IchigoJam、Small Basic、C# を7項目で比較してみた

micro:bit、IchigoJam、Small Basic、[C#] を7項目で比較

(※2)Scratch は無料のプログラミング言語で micro:bit のMakeCodeエディター とよく似ています。インターネットにつながっているパソコンが必要です。

micro:bit 対象に Python(テキストプログラミング言語) で
温度表示のプラグラムを組むと写真のようになります。

micro:bit をPython言語で動かす

あとで解説をしています

 C# って?

Windows向けアプリケーションソフトを作るのに一番適したプログラミング言語です。
現役のプログラマーが使用しています。
(現在、現役のプログラマーが使用しているプログラム言語は10種類ほどあります。)

また、ゲームを作成するにあたり多くのゲームエンジニアがゲームエンジン(開発環境)としてUnityを使っています。
何と無料で使えます!
ここでもプログラミング言語として C# が使われています。

「Visual Studio」という単語を目にされたことがあるかもしれませんが、これは C# でアプリケーションを作るためにMicrosoft社が提供している大変信頼性の高い開発環境です。
これも、何と無料で使えます!

それだけに C# の習得難易度は高めです。
C#、SmallBasic ともに MicroSoft 社 が作っています。
親分、子分の関係に近いです。
見出し「高校2年以上対象のプログラミング寺子屋だったら C# も候補に」で解説しています。

C#開発環境Visual Studio画面

Visual Studio画面 プログラムを理解することと同時に各画面の使い方(機能の理解)も学ぶことが必要になります。

 

一番おすすめなのはどれ?

目的(どんなプログラミングをしたいか)で使い分けます

私が現役の教師で
35人の生徒を対象にプログラミングの授業を受け持つとしたら、

教材として、micro:bitIchigoJam を使うはずです。
5時間程度で発表ができるプログラムが作れるからです。

学校でプログラミングを体験し、
何かしらの機器(装置)をつなぎ自分で動きをコントロールしたいというお子さん。
小学3,4年生だけどもやってみたい、
まったくの初心者だけどやってみたいというお子さんなら、

micro:bit】 です。
お子さんのスキルに合わせ、最初だけ、装置のつなぎ方やネットの見方を大人が一緒にしてあげてください。
お父さんお母さんにとっては難しいことは何もありません。

micro:bitの表裏
micro:bit 電池ボックスが必要なので「初めてセット」がおすすめ

学校でプログラミングを体験したが、積み木のようなプログラミングは物足りない。
また、ハンダ付けとかの電子工作もしてみたいし、車、ロボットといったものを工作し動きをコントロールしたいというお子さん。
小学6年でアルファベットが覚えられているなら、

IchigoJam です。
リファレンス(命令文の解説書)を印刷し、最初だけプログラミングに使われている英単語の日本語訳を教えてあげてください。
お父さんお母さんにとっては難しい英単語ではありません。

Ichigo Jam [Started Set] の内容物
Ichigo Jam [Started Set] の内容物 でも、単体完成品がおすすめです
Started Set付属の解説書
Started Set についている解説書ですがなくても大丈夫、この写真の通りに接続します

学校でプログラミングを学び、何かしらの機器(装置)をつなぎ動きをコントロールするよりも、まずは本格的なプログラミングを体験してみたいと思った中学2年生以上のお子さんなら、

Small Basic 】です。
パソコンさえあれば、大丈夫。

SmallBasicサンプル
命令文は英文です。小学生や中1には、やや難しいです。

micro:bit IchigoJam 共通するメリットデメリット

共通のデメリット

(1) 学校ですでに教材として学習しているかもしれない(今後するかもしれない)。
(2) 6時間ほど学ぶとこの教材で出来ること出来ないことがわかってくる。

オプションの追加購入で楽しい面白い工作や実験体験はできますが、突っ込んだプログランミング学習となると物足りなさを感じられるかもしれません。

2種の写真 micro:bit  IchigoJam

メリット

この2教材で学習する分にはつまずくという心配はまずないです。
Small Basic は上の写真や次の詳細説明を読んでもらうとわかりますが、つまずきやすい要素が含まれます。

おすすめ自宅学習プログラミング教材①micro:bit

デメリット

ブロックを組み合せ、プログラムを作っていきます。
① テキストプログラミング言語と比べると出来ることが限られてきます。
プロが使用するPhyson,JavaScript(テキストプログラミング言語)も用いることができるのですが、いっきに難易度が高まります。

温度表示のプログラムをブロック(ヴィジュアル言語)、JavaScript、Python で比較したのが下の写真です。

プログラムの比較
温度を表示するプログラムの比較

② [メリット]で使い方の例を紹介しますが、直感的過ぎてプログラミングの意識がうすれかねないのがデメリットです。
その点では外部機器のない ソフトだけの Scratch の方がプログラミングを意識できるかもしれません。

メリット

なんといってもその簡単さです。
[1] インターネットにつながっているパソコンにUSBケーブルで接続します。
[2] 解説書に書かれたurl [https://makecode.microbit.org/ ]にブラウザでアクセスします。
[3] あとはパソコンに表示される画面に、ほぼ見よう見まねでブロックのようなものを積み重ねるだけで、LEDの点滅をさせたり現在の温度を表示させたりができます。

そのブロックがプログラミングになっているので、授業では写真右側についてプログラミングの要素部分の解説をすることになります。

micro:bitに温度表示
右のブロックを組むことで、現在の温度表示ができます。

どんなことができるの?賢い購入方法は

 

micro:bitに指定したアイコンを表示
micro:bitに指定したアイコンを表示

プログラムし実行した結果はパソコンの画面に表示されることはなく、micro:bit 本体のLEDに表示されます。
「はじめてセット」を購入すると、温度センサー以外にも光センサー、地磁気センサー、加速度センサーがついています。
アドバンスセットには上記に加え、超音波センサー、サウンドがついています。背面は下の写真のようになっています。

接続部分の様子
↓部分は壊れやすいので、注意!

また、ロボットのような外部接続機器や使用方法を解説したサイトもあります。

セットでなく単体だともう少し安く買えますが、電池ボックスが必要なので、セット購入がおすすめです。
メルカリに商品があれば、一番安く買えます。
「マイクロビット はじめてセット」だと[micro:bit]で検索してください。

おすすめ自宅学習プログラミング教材②IchigoJam

デメリット

テキストプログラミング言語なのでキーボード入力をしますが、
① 慣れないうちはかなり入力ミスをします。
② 画面(文字)が見ずらいです。文字のドットが荒く、またテレビにRCA接続をするためです。

プログラム表示画面
画面右は「← →キーを押して [*] をよける」ゲームのプログラム

キーボードはps/2対応と明記されたものとなっています。
ps/2キーボードというのはコネクタ部分が写真のようなずいぶん昔のキーボードなのですが、今のUSB接続のキーボードも規格をよく見るとps/2対応と明記されているものがあります。
キーボード準備購入に注意が必要です。
「IchigoJam Get Started Set」 を購入すると下の写真のようなペラペラのキーボードがセットとして購入できます。
しかし、個体差からかもしれませんが、接触が悪く、慣れないと入力が思うようにできないです。また、最近のキーボードとキーの配置が異なります。
この3点から「教材としての難易度」を 少し難しい としています。

キーボードps/2の説明
昔のps/2端子です。現在はすべてUSB端子接続になっていす。

 

メリット

[1] わりと直感的な命令文から出来ています。
命令文の説明書のことをリファレンスといいますが、これが全部で6枚くらいです。
印刷しておいて、その都度どんな機能だったけ?と見ていきながらの学習ですが、他のプログラム言語と比べると数が少なく利用しやすいです。

リファレンス1ぺージ目
最新のリファレンスのサイトにリンクしています、画像をクリックしてください。
プログラムサンプル
このようなプログラムを多数紹介したサイトにリンクしています、画像をクリックしてください。

[2] 「楽しく学べるプログラミングコンテンツ」として、見本となるプログラムが多数紹介されています。
そのプログラムの一部を書き換えることで、自分だけのプログラムを作ることもできます。※参考リンク タイトル最後に(1500円)と書かれていますが、間違いがなおされていないようです。上の「ミニゲームズ」と同じサイトです。

どんなことができるの?賢い購入方法は

5行程度の短いプログラムでも、ちょっとしたゲーム的なものが作れます。短時間で一つのまとまりのあるプログラムが作れるのは、次のステップへ進む動機づけになります。

「LEDが光ったら、すぐ本体のボタンを押す」という反応速度を調べる一種のゲームなら、

※行番号10 20 30 ……の後に命令文を記述します。細文字はリファレンスに書かれている解説とほぼ同じです。
10 LED 0   
1ならLEDを点灯、0なら消灯  
20 WAIT RND(180)+60
WAIT:指定の数だけ待機(60で1秒) RND:0から指定の数未満のでたらめな整数を返す
30 LED 1:CLT
CLT:TICK()のカウントをリセットする
40 IF BTN()=0 GOTO 40
BTN:0以外ならボタンが押されている IF:行番号40にとどまるか50に進むか分岐判断
50 ?TICK()
?:数や文字列を表示する TICK: CLTからの時間を返す(1/60秒で1進む)

programとその実行した画面
RUNでスタート,写真では1回目は115/60で約2秒,2回目は9/60で0.15秒と表示からわかります。

プログラミングが初めての人には、うむ~??ですが、結構 WAIT BTN LEDの1or0など直感的な要素が多い命令文(英単語、英単語の省略形)です。


ロボット・電子工作関連商品が販売されていることも嬉しいです。

いろいろな機器とつなぐことを拡張と言います。micro:bit に劣らぬくらい機器があります。

接続は、以下の写真のようになります。
自分専用のコンピュータが持てた!というちょっと嬉しい気持ちになります。

 

接続した状態
黄色矢印部分は故障しやすいので注意

メルカリに商品があれば、安く購入できます。「IchigoJam完成品」だと

 

おすすめ自宅学習プログラミング教材③Small Basic

デメリット ・完成度のやや低いソフトです。

① 日本語入力ができなくなる時がある。
参考リンク【Small Basic 入門】「日本語入力できないとき」で処理対応します。
※プログラムそのものは英数字で入力しますから、さほど気になりません。

② キーボード入力に慣れていない人(初心者)がキーボードを触ると思いもよらぬ入力操作をするときがあります。
そのときソフトが動かなくなり、ソフトを一旦終了させなくてはいけないことがあります。
またはソフトが勝手に終了してしまうことがあります。
※キーボード入力操作に慣れてくるとそのようなことはなくなります。
データの保存の大切さとかマメに保存操作をする癖がつきます。
③ わからないところが解決できず頓挫する可能性がある。
 (プロが使うC#,JAVA,Physon,JavaScript といったプログラミング言語に比べると頓挫する可能性は低いです。)
④ センサーをつないでみたい(温度測定)、外部機器をコントロールしたい(ロボットを操作)といった希望に対応できません。

 

メリット

命令文の入力補助をするIntelliSense

[1] インテリセンス(IntelliSense)という命令文の入力をサポートしてくれる極めて秀逸な機能を持ちます。
初心者には大変有効で、完成度の低さを十分補います。

TextWindow.WriteLine と入力したいとき、「t」と打ち込むと写真のように「T」で始まる命令文などの候補を表示してくれます。

また、その命令文のリファレンス(解説)も表示してくれます。入力した後に命令文にマウスカーソルを持っていくと画面右に命令文の詳細が表示される機能があります。

オブジェクト指向のプログラミング言語

[2] 今のプログラミング言語は「オブジェクト指向」という要素考え方が取り入れられています。とりあえずTextWindow.WriteLine ならの[TextWindow.]の部分と理解してください。写真右側に[TextWindow]オブジェクトが持っている命令文をプロパティ、メソッドごとに表示してくれます。

[3] ネットにつながるパソコンがあれば、費用は0円です。プロが使用するプログラミング言語には、Python,Java,JavaScript,C# またゲーム開発エンジンとして Unity といったものがありますが、それらの学習へのスムーズな橋渡し役になります。

私がSmall Basicを寺子屋の教材に選んだ理由とは

① 中2以上なら独学可能なテキストプログラミング言語
② 仕事で用いるプログラミング言語の基礎知識を学べる
③ インストール等がC#,Javaなどに比べ簡単、また無料
④ PCが少々古くてもネットにつながれば、大丈夫
⑤ ネット上に自学自習に役立つサイトやサンプルがある

寺子屋募集チラシ

最新のチラシは、まるめデンタルクリニックにおかしてもらっています。   土曜日の午前中を主としていますが、都合の調整ができれば、土曜日以外にも寺子屋を実施しています。

 

どう準備したらいい?

① Microsoft Small Basic 1.2 日本語  のダウンロード

(※注意※ 現在 Microsoft Store からのダウンロード版Ver1.3は使えないケースがあります。 )(desktopパソコンは使えて、noteパソコンは使えない感じがします。)ファイルをダブルクリックし、指示に従いインストールする。

英語表記なので「指示に従いインストール」に不安な人は
のぶ亭『プログラミングの相談窓口』 「Small Basicをインストールしよう」を参考にする。
広告と履歴の行が一杯ありますので、本文を探すのがちょっと大変です。
下の方に本文「Small Basicをインストールしよう」があります。

 Microsoft チュートリアル 日本語版 「Small Basic 入門」  も一応ダウンロードしておく。
使用説明書です。


  

 初心者のためのプログラミング入門 & ゲームプログラムの作り方入門
【Small Basic 入門】「1.おぼえやすいプログラミング言語 Small Basic」
を読んでいく。

なお、【Small Basic 入門】 の次の記事 「2.Small Basic をインストールしてみよう」 に記載されている
[Microsoft Store からのダウンロード]の部分は無視し、次の[スタートメニューを確認しよう]から読んでいきます。

その他参考になるサイト

Small Basic を使った子の感想

参考程度ですが、
プログラミング寺子屋の受講生の感想文を載せておきます。

プログラミング中

高3 O君

私は今回プログラミング寺子屋での学習を通して、自分の目的であったプログラミングに対する事前知識を入れることを達成できたと感じました。
最初は慣れないコードのタイピングやプログラミング特有の考え方に苦戦しましたが、徐々に回数を重ねていくうちにソフト内の機能や覚えた知識を使い組み立てていけるようになりました。
また、本来の目的以外にも自分の進路やIT系の職業について教えてもらえたりと、様々な経験をすることができました。

 

プログラミング寺子屋の様子

小6 A君
僕はプログラミングで難しかったところは、このプログラムはどういう意味なのかを考える事です。
今はちょっとわかるようになってきました。今後はもっとプログラムの意味が分かるようになりたいです。

小6 B君
僕はこのプログラミング教室で沢山の事を学べました。
はじめにプログラムを見た時は何が書いてあるのか全然わからなかったけど、今になると読めるものもあり、すごく楽しいです。
今後プログラムを活用する時があったらこの体験を生かしたいです。

中1 C君
始める前は土曜日が半分なくなるから嫌だと思っていたが、始めてみると、
プログラムがどう動くか友達と相談して予想してプログラムを実行してみる。
違った時もあったがあっていた時もあって、楽しかったし達成感がありました。

プログラミング寺子屋の様子その2

中1 D君
初めてプログラミングをして、とてもわからないことだらけだったけど、今はとても頭を使ってすることだと実感しました。
まだ基礎中の基礎なんだろうと思うけど、僕はそれでも楽しく学ぶことができました。
僕は忘れ物が多く怒られることもありましたが、この機会を活かしてまた実践できるようにしていきたいと思います。

高1 Eさん
プログラミングを学びたくて、教室を探している時にプログラミング寺子屋を教えてもらいました。
通わせていただいて、基礎から学び始めました。
応用が入ってきて難しいと感じる時、先生はアドバイスをくれて自分の力で分かるように

高校2年以上対象のプログラミング寺子屋だったら C# も候補に

現在、仕事で Scratch(micro:bit)、IchigoJam、Small Basic が使われることはないです。

仕事でつかえる C# は、その分難易度が高いです。

高校「情報」の授業でも少しプログラミングを学習しますので、
高校2年生以上対象なら、習得難易度は高くなりますが、プログラミング寺子屋の教材に[C#]を使うことも考えられます。
(つまずきやすい内容に関し、アドバイスしながら学習をすすめられますので)

C#、SmallBasic ともに MicroSoft 社 が作っています。
親分、子分の関係に近いと先に書きました。

1から10までの和を計算するプログラムは C# だと

using System;
class Program
{
static void Main()
{
int sum = 0;
for (int i = 1 ; i <= 10 ; count++)
{
sum = i + sum ;
}
Console.WriteLine($”1から10までの和は{total}です。”);
}
}

これに対して、1から10までの和を計算するプログラムは SmallBasic だと

sum = 0
For i = 1 To 10
sum = i + sum
endFor
TextWindow.WriteLine(“1から10までの和は ” + sum + ” です。”)

親分子分というほど、似ていないじゃないかと
言われそうです。
確かにその通りかもしれません。
しかし、SmallBasic を学んでいると、
[C#]をはじめとして、
仕事で使われているプログラミング言語の習得がしやすくなります

そういう理由から、プログラミング寺子屋では、SmallBasic を教材として使っています。

高校「情報」プログラミング部分の抜粋

高校「情報1」の教科書にはこのようなプログラムが記載されています。(教師によって指導するプログラミング言語は異なります。)

 

プログラミング学習で勘違いしないようにしたいこと

プログラミングを学習したらといって、数学や他の教科の成績アップにつながるかは別問題。
数学や他の教科の成績アップを期待してのプログラミング学習は期待外れになります。

「大学入学共通テスト」令和7年度から実施される『情報Ⅰ』に役立つかも 
これもほぼ期待外れになります。

大学入試センターが出している 試作問題『情報Ⅰ』のプログラミングの箇所をみてみると以下のようになっています。
プログラミング以外の問題の方が難しいです。

試作問題『情報Ⅰ』プログラミングの抜粋

終わりに

プログラミング寺子屋募集張り紙

現在は、調整がつけば土曜日の午前中に限らず、寺子屋を実施しています。

 

もしも「プログラミング寺子屋」希望される方、興味をお持ちの方があれば、
送迎がしてもらえる宮津市、伊根町、与謝野町の方なら、
下の「お問い合わせ」から、メールをいただければ、相談します。

参加者が多数の場合や日時の調整がつかない場合は、お断りをすることもありますので、ご理解ください。