個別指導塾、学習塾のヒーローズ。植田(名古屋市天白区)、赤池(日進市)の口コミで評判!成績が上がる勉強方法が身につく!振替、自習も便利!
// 条件1に該当しない場合の処理

スクラッチ

定期テスト対策で時事問題の富岳からのプログラミング教室

マイクラミング プロコース 事例

塾長です。

今回の定期テストでは、さすがに出ないだろうと思っていました。

この大変な時期にも時事問題!?

しかし出るみたいです、時事問題。
一部の学校、一部の学年です。

子供の環境格差を反映してしまうテスト範囲の1つが時事問題です。
貧困家庭、保護者が政治や経済に無関心、保護者がニュースを見ない・・・こうしたご家庭の子供たちには解けない問題です。

それを是正するなら、授業中にニュース解説をしたり、授業中にニュースを調べさせる主体的な取り組みを実践するしかありません。
要は公教育かつ義務教育の機関である学校で、いかにして社会格差を吸収できるか。
しかし、授業時間が切迫している今の状況では、それができないから困っているはず。

さすがに今年度は出さないだろうと思っていました。

それなのに、また無茶をしますね。
何かの間違いでしょう。上司がチェックし忘れたとか。

子供たちがかわいそう・・・。

学校の先生には99%感謝と尊敬をしておりますけれども、
「ちゃんと組織として動いて欲しい」
という改善はお願いしたいです。

ということで、夜なべして時事問題対策の用語解説集をつくりました。

ふー。目が痛い。腰も痛い・・・

昨日から今日にかけて、必要な生徒たち全員に配り終えました。

富岳と不老

その用語解説集。
もちろん理化学研究所のスーパーコンピューター「富岳」も載せました。
8年ぶりの世界ランク1位ですからね。
名前の由来は「富士山」。

そして名古屋大学の「不老」も忘れてはいけません。
富岳と同じCPUのコンピューターで世界ランク36位
名前の由来は、大学のある「不老町」。
コンピューター処理の流れを表す「フロー」が読み方です。

計算スピードは富岳の方が60倍ほど高速ですが、人工知能や大規模記憶などが強化されています。
富岳の弟みたいなものですね。
ただ、不老は富岳より一足早く7月1日から運用を開始しています。

もちろん、不老も用語解説に載せました。

スーパーコンピューターでも使えるパイソン

その富岳や不老で、最もお手軽にプログラミングできるのがパイソン(Python)です。

  • シミュレーション
  • 人工知能
  • データサイエンス

などの研究をするのにパイソンがとっても便利なんです。
数学や物理を扱う機能がそろっているからです。
しかも無料で。

パイソンは科学技術に強い!

というワケです。

パイソンは8月開校の「プロコース」で

塾長のプログラミング教室で、この8月からプロコースを開講します。
実は、そこで使うのがパイソンです。

ハイコースを卒業する生徒がそろそろ出てくるからです。
彼らが言うのです。

もっと高度なことをやりたい!

と。

そのような生徒を対象に8月から限定的にサービスを開始します。

パイソンを選んだ理由は3つあります。

  1. 研究と就職の両面で将来まで役に立ちそうだから
  2. ジュニア、ミドル、ハイの環境に最初からインストールされているから
  3. 文法がシンプルでモダンだから

もちろん塾長が楽しんで使っているから(4つめ?)というのもあります。
教える本人が楽しいと思わなければ、教材を開発するまでに至りませんからね。

プロコースの方針として考えていること

一言でカッコつけて言いますと、

「次の世代に求められるコンピューターの使い方を教える。」

ということを常に考えています。

パイソンが人気とは言え、プログラミング言語には流行り廃りがあります。
ですから流行に左右されない芯の部分が生徒たちの中に残るように教えたいです。

何と言いましょうか、

プログラミングのエッセンス?
プログラミングのエキス?
プログラミング汁?

みたいな、10年や20年では変わらないプログラミングのセンスや勘所のようなものを教えていく方針です。
つまり生徒たちを、

「細かいことは自分で調べながらプログラミングできる」

という状態にしてあげたいと思っています。

そのために、例えば、あえて部分的にHTMLやJavaScriptを登場させたりします。
あるいは古い開発手法と新しい開発手法の両方を試してもらったりもします。

もちろんジュニア、ミドル、ハイの方針と変わらない部分もあります。

学校で習ってきた数学や理科、美術や技術などの知識もどんどん活用する!

この方針は変わりません。
塾ですから普遍的な教養とは何かを考えたいです。

プロコースでやること

スクラッチに比べると、パイソンはかなり高度なことができます。
しかもスクラッチに比べると超高速に処理ができます。

章の名前や構成は後で考えますが、ざっとこんな感じです。

  1. 導入
    ・スクラッチとパイソンを比較しながらプログラミングのスタイルを学びます。
    ・また概念の拡張として、整数、小数、文字列、配列や辞書、集合なども学びます。
  2. 計算力を体感する
    ・マインクラフトで学んできた3次元のベクトル空間を抽象化します
    マインクラフトは座標を(x,y,z)≡(横、高さ、縦)に対応させた空間です。
    これを(R,G,B)という色の空間に置き換えてお絵描きソフトを作ります。
    ・このように空間という概念を抽象化し、ハードウェアとソフトウェアの違いを体験します。
  3. 自動化を体感する
    ・ウェブスクレイピングを体験します。
    マインクラフトのプログラミングでは、よくブロックIDをインターネットで調べました。
    これを自動化します。
    ・調べた情報をCSVファイルという汎用的な形式で保存します。
    ・またパイソンで読み込める形式でファイルに保存して再利用性を考えます。
  4. データーベース
    ・スクレイピングしたデータをデーターベースにして管理します(RDBモデル)。
    ・SQLを簡単に紹介し、目的に応じてプログラミング言語が変わることを体験します。
  5. Webサーバーおよびアプリの開発
    ・データーベースを検索するアプリを3種類ほど作ります。
    ・コマンドラインのアプリ
    ・ブラウザで調べるアプリ(クライアント-サーバーモデル)
    ・Web-APIを使って調べるアプリ(REST-APIモデル)
  6. 人工知能
    ・詳細は企画中です。ここまで来るのに1年以上かかるでしょうから、ゆっくり準備します。
    人工知能の紹介程度になりますが2種類ほどやろうと思います。
    ・皮肉にも高校の教科書から削除された行列が人工知能では必須です。
    数学の基礎からどうやって教え直すのかが最大の課題でしょう。

ちょうどブログのサムネイルにある写真が、お絵かきソフトの完成図です。

マイクラミング プロコース 事例

画面上で絵を描くと、マインクラフトの世界でそれが実現されます。
背景を白紙にすればホワイトボードにもなります。

ところで、夏休みの宿題で「写し絵」(フロッタージュ)に取り組んだ人もいるでしょう。
10円玉に紙をかぶせて、鉛筆でこすると10円玉の模様を写し取れるという、あれです。

それと同じようなこともできます。
背景の画像をマウスでこすっていくと、マインクラフトの世界に、背景の絵が写し出されていきます。

そんなお絵かきソフトです。

学校で習った数学や美術(図画工作)のアイデアを使っています。

楽しそうでしょ!
そして頭が良くなりそうでしょ!!

こういうプログラミング教室って、他にはないと思います。
学校の学習指導要領に全て目を通してから作りました。

ソフトウェアの価値を理解できるという教養

空間座標の縦、横、高さを数字にすれば、どんな場所でも表せます。
色の三原色の赤、緑、青を使えば、どんな色でも表せます。

これをベクトルの(x,y,z)に当てはめて使うと、どちらも同じ数学の式になります。
例えば、場所の近さも色の近さも「距離」ととらえれば、どちらも三平方の定理で計算できます。

このように、ソフトウェアというのは、数学のような抽象化された概念を色々なものに当てはめて、新しい道具にしたものです。
学校で習う勉強は、とても抽象度が高いので、一見すると、何の役にも立たないことのように思えます。

しかしソフトウェアの世界では、その抽象度の高さが逆に大きな利用価値を生んでいます。

その価値を理解している投資家や政治家が多い国が、いち早く発展しているというワケです。
それは Google、Apple、Amazon、Facebook、Microsoft、Adbe、ZOOM などの歴史を見れば明らかですね。

残念ながら今までの日本には、抽象的な学問の価値やソフトウェアの価値を理解している人間が、ほとんどいなかったです。
いたとしても、そのような人材は、みな日本を出て海外に行ってしまいます。

スーパーコンピューターで世界一をとれるのは、ハードウェアだからです。
ソフトウェアについては、今後の日本の変化に期待したいですね。

ですから若い人にも大きな期待がかかっています。

高度の意味を取り違えたくない

逆に、機械の仕組みやコンピューターの仕組みなどは省略します。
プロコースではマイコンボード、LEDやモーターの基盤、ロボットなどは一切使いません。
ゲーム制作もしないです。

ロボットやゲームを作れば、いかにもプログラミング教室っぽいですかね?

塾長は、そのようなことを子供たちにやらせるのは反対です。
「職業に近い」という意味で「高度」なことを、いきなり子供たちにやらせるのは間違いだと思います。

子供たちが大きくなる頃には、今の職業の過半数は無くなっています。

ですから私の教室では、特定のマイコンや特定の機械を詳細に説明することはないです。
子供たちが大きくなる頃に廃れてしまうような流行りの技術は、教えても仕方がありません。

つまり、ただ単に大人向けの技術研修を簡単にしただけ、みたいな教育は、子供の将来には何の役にも立たないということです。

ロボット教室、ゲームプログラミング・・・

これらは教育というよりは「趣味」と割り切って楽しむ方が幸せでしょう。
学校や学習塾としてやるなら、イベントに使うくらいですかね。

客寄せパンダとしては良いかもしれません。
自分の子供に習わせたいかと言われたら、やらせたくはないです。

趣味としてやりたいと言われたら、それはそれで良いですよ。
おもちゃを買い与えるのと同じ意味で。

中学生や普通科の高校生に教えるべきことは、職業訓練ではありません。

学校で学んでいることを開発や発明につなげる発想方法だと思います。
学校で学んできた抽象的な概念を、身の回りの色々なことに当てはめてみる、モノや機械を抽象化して考える、というソフトウェア的な発想だと思います。

今時のプログラミングでよく登場するデータの構造や情報の扱い方でもよいでしょう。
モダンなプログラミング言語で扱われるデータ構造もまた、ものごとを抽象的にとらえるための器です。

それが分野を問わずコンピューターの持つパワーを使いこなすことに直結します。

ソフトウェア的な発想は、今の日本人の多くが苦手です。
今の日本人は、誰にでもハッキリ見えるものや流行のもの、保証されたものばかりに目が行きます。

しかし何かを創造していくには、それとは逆の視点や発想が必要です。
0から1を作り出す創造性をこれから強化しなければいけないと思います。
だから重視して教えようと思います。

ついついコンピューターというと、

「どんな技術を身に着ければよいか」

という話になりがちです。
就職活動中の人がそうなるのは正しいと思いますが、子供たちにとっては違うと思います。
目の前にいる大人たちが

「Javaを覚えた方が良いよ。」
「ロボットを作れた方が良いよ。」

などとアドバイスしたとしても、子供たちの未来では全く違う話になっているでしょう。

「何の役に立つのか」

という問いかけは、子供たちにとっては役に立たないのです。

僕らの先輩の世代は、相対性理論や量子力学、整数論などを全く役に立たない学問だと信じていました。
しかしカーナビや量子コンピューター、暗号によるセキュリティーなどは、これらが活用されまくっています。

先の教科書改訂で削除されてしまった高校数学の「行列」も、人工知能をプログラミングするのに必須の数学でした。

大人が言う「○○が将来の役に立つ」などというアドバイスなんて、所詮はそんなものです。
だれも未来について分かりません。

ですから今の流行に右往左往するよりも、

コンピューターで世の中をどう良くしていくか。
どんなものを作れば多くの人から喜ばれるのか。

という社会との関わりや希望について考えさせて、
それを実現させていく道具立てとしてプログラミングがある、

という順番で話をした方が、結局は近道になると思います。

そしてもちろん、職人が良い道具を切れる技で使いこなすように、プログラミングにも良い道具と技があります。
テスト対策や受験対策で暗記していた公式が、実はそうした良い道具なのです。

これから日本が豊かになるのか否かは、それが分かる人をどれだけ増やせるかにかかっています。

そのような話をした方が子供たちの将来のためになるでしょう。

 


生徒・保護者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
【会員限定】お子様の成績と可能性を伸ばす18個のノウハウ

友だち追加


塾関係者様のお友達登録はこちら

LINE登録するとプレゼントがもらえます!
「zoomで簡単。オンライン授業移行の教科書」
または個別対談も可

友だち追加

 


名古屋市天白区の植田で塾を探すなら個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

【塾長の独り言2】小学生や中学生にプログラミングさせても無意味!?という誤解がなぜ日本には根強いのか?

なぜプログラミング教育は誤解だらけ?

塾長です。

2020年度から実施されるプログラミング教育が目の前に迫ってきました。それなのに、今だに「そんなの意味あるの?」という疑問の声を聞くことがあります。もちろん多くは「誤解」からくるご意見です。今回はその誤解の正体について語ります。

解説動画の方が良い方は下のYouTubeでどうぞ。

【塾長の独り言2】小学生や中学生にプログラミングさせても無意味!?という誤解がなぜ日本には根強いのか?

(※)動画を撮った後で気付いたのですが、「黒歴史」と「ブラック企業」の2つの「黒」で話しがまとまっている気がするのは偶然です。たまたまで、他意はありません。何はともあれ、誤解が解けて日本のプログラミング教育が正しい形で盛り上がることを願います。

 

子供にプログラミングなんて習わせてどうするの?

最初に政府がプログラミング教育をうたったとき、賛同の声よりも、むしろ批判の声が高まりました。多くの人が誤解し、そして混乱したからです。私が思うに、その混乱の原因は2つあります。

日本人の誤解

  1. 日本ではプログラミング教育で失敗した黒歴史があるから
  2. 日本では「プログラミング」の意味が「コーディング」だから

1つ目は、高校数学にプログラミングを導入して失敗した「黒歴史」があったからです。
あの時は「フローチャート」と「BASIC」という特定の技術領域に偏ってしまったのが敗因です。実際、2014年度のセンター試験まで数学2BでBASICのプログラミングが出題されていました。センター試験の過去問集が、まるで人に見られたくない黒歴史のアルバムのようになっています。

2つ目は、日本では「プログラミング」の意味が、頭脳労働ではなく肉体労働の「コーディング」を意味しているからです。
日本では経験豊富でスキルの高い人が頭脳労働の「設計」を分担します。そして若手がその設計をただコンピューター語に翻訳することを「プログラミング」と呼んできました。要するに日本の多くの職場では「プログラマー」=「下っ端」なのです。
ところが海外でプログラマーと言えば、時にスティーブジョブスビルゲイツのように「世の中の仕組みを変えてしまった人」という意味まで含みます。

さて、海外視察で意識を高めた政府高官は、もちろん未来志向で意欲的な意味を込めて「プログラミング教育」と言ったつもりでした。しかし上記2つの背景を持つ日本社会では、その言葉はマイナスイメージでした。とても残念です。

日本のプログラマーは文系で、海外では理系!?

海外でプログラマーが世界の仕組みを変え続けてきたのには、日本とかなり違った事情があります。それは、日本のプログラマーが文系で、海外のプログラマーが理系だということです。

日本では理系の大学生の多くが公務員か研究職か工業系に進んでしまい、ソフトウェア産業にはあまり就職しませんでした。一部のパソコン好きな人くらいでした。信じられないかもしれませんが、2010年ころまで、多くの日本企業はプログラムの価値を低く見てきました。若手はその価値を理解していたかもしれません。しかし日本は年功序列。企業の上層部の人達は平成初期の感覚でプログラムを機械の付属品くらいにしか思っていませんでした。そのためプログラミングしている部署自体が、出世の見込めない部署にされていました。そんな状況のため、理系の技術者が多く育ちませんでした。そして才能のある人間は海外に行ってしまいました

実際、日本においてプログラマーの仕事の多くは、理系の知識を使いませんでした。日本のIT会社の仕事と言えば、ほとんどが事務作業を自動化するような開発です。そのような仕事が山ほどあって、それで飯が食っていけました。その種のプログラムは高度な数学や物理を使いません。算数しか使いません。いえ、本当は目に見えない所で、めちゃくちゃ高度な数学や物理学が使われているのですが、そういう肝心な機能は海外で発明されてしまっており、日本はそうした海外の技術を使ってプログラミングするだけです(※)。ですから文系の人でもプログラミングさえ勉強すればできるようになります。しかも仕事が多くあって、常に人材不足で残業だらけ。文系だろうが理系だろうが、多くの人がプログラマーになってきました。それが日本です。

(※)悲しいことにソフトウェア産業において日本は技術後進国です。
WindowsにMacOS、Linux・・・どれもアメリカ産です。インターネットやデーターベースの仕組みもアメリカ産です。人工知能や新しいプログラミング言語など、時代を切り開くソフトウェア技術のほとんどが海外製です。ビッグデータを抱えるGAFAは全てアメリカの企業です。日本人の多くは日本ではなくアメリカに納税している形になっています。
そして、塾長がマイクラミングを開発した時に参考にしたのは、英語のホームページと中国語のホームページだけです。スクラッチ3.0の仕組みをちゃんと解説している日本人は一人もいませんでした

日本のプログラミングはプラモデルみたいなものだった

たとえ話をします。

たとえば、プラモデルを組み立てるのに文系も理系も関係がありませんよね。必ず組み立て方を説明する図面や解説が着いてきます。その通りに組み立てれば、ちゃんと形が出来上がります。確かに作るためには一定の技量が必要で、時間もかかるし苦労もします。同時にチャレンジや楽しさもあります。色塗りなどで作り手の個性を出すこともできます。日本のプログラミングは、正に「プラモデルを組み立てる作業」のような感じでした。

しかし海外のプログラミングは、もっと根本的な開発を含んできました。

化学の専門知識を持った技術者がプラモデルに相応しいプラスチックそのものを創造しました。あるいは塗料を作りました。物理学や工学の専門家がプラスチックを綺麗に成型する機械を発明しました。数学を操る技術者が図面や解説を何倍に拡大・縮小して印刷しても滑らかに表示できる数式を作りました。ソフトウェア工学の専門家が、それらをデーターベースやソフトウェアに置き換えてパッケージ化し、製造方法そのものを商品にしました。

上の話しは、あくあまでもたとえ話です。

要するに、ほとんどの日本のプログラマーは、今まで発明の必要がないか、発明ができない立場や状況にいました。しかしプログラミングは安い作業ではありません。他の職業と同じで、むしろ世の中を良くする仕組みを創造する活動です。

色々な分野の専門知識が、色々な立場の人たちに広く利用できるようになる、そういう仕組みを創り出していく活動も「プログラミング」に含められます。また、そういう夢をぜひ持って欲しいと思います。

20世紀後半、確かに日本人の技術力は多くの分野で世界1位だったかもしれません。しかしコンピューターが発達してソフトウェアの重要性が高まるにつれ、日本の技術力はどんどん影を薄めてきました。過去の栄光に浸るには、僕らはまだ若すぎます!

早く目覚めなければいけません。日本人はプログラミングにおいても「世の中の仕組みを根本から変える発明」を目指さすべきです。そういう人が千人に1人、いや万人に1人でも出て来るような社会にしていく必要があると思います。

プログラムの基礎が国語や数学や物理!?

プログラミング教育よりも、まず読解力だ、算数・数学だ、という主張が根強いです。英語教育を強化する時にも同様の主張があります。読解力や算数・数学が大切なのはもちろんです。しかし、だからと言ってプログラミングや英語は後回しで良いとはなりません。むしろ読解力や算数・数学の技能を発揮してプログラミングして欲しいと思います。

それがどういう事かを考えてみましょう。

コンピューターを触らないプログラミング

今から25年くらい前、大学生の時。私は選択科目の中で「コンピューターアルゴリズム」を受講しました。大学生になったらプログラミングを勉強しようと決めていたからです。「アルゴリズム?」という疑問を抱きつつも、コンピューターと名の付く講義がそれしかなかったので、迷わず選択しました。ところが、最初の講義で取り組んだのは図形の問題でした。次の週も数学でした。最後は円周率を速く正確に求める数式の問題でした。結局、その講義の中ではコンピューターを1秒も使いませんでした。紙と鉛筆だけの世界でした・・・

アルゴリズムは「算法」と和訳されるみたいですね。そういえばコンピューターは計算機でした。同じ計算結果を得るために、どんな式を使うかで計算の速さが変わりますプログラミングする前に、より速くより正確に計算できる数式を考えること。それがアルゴリズムでした。ですから、残念ながら最後までコンピューターを使わなかったわけです。

仕事の早さも電気代もプログラマー次第!?

ただし学びは大きかったです。

  • プログラマーが数学や物理の公式を知っているか否か
  • 更にその公式を目的に応じてカスタマイズできるか否か

こうしたことで、計算の速さも計算結果の正確さも大きく変わってしまう、ということを理解できました。しかも電気代も時間も大きく変わってしまいます。同じ仕事をするのに、時には1万倍くらい効率が変わったりします。使うエネルギーが何桁も小さくて済みます。

もしも世界中のプログラマーがアルゴリズムを学べば、世界中のコンピューターが消費する電力が今よりもずっと減って、地球の温暖化さえ防げるのではないか、と思ったくらいです。

例えば、四捨五入をどう求めるか?

アルゴリズムしだいで計算量が変わってしまう簡単な例を出します。おそらく、よくある例題だと思います。

「与えられた小数を、小数第1位を四捨五入して整数の概数にしなさい。」

これを四捨五入の考え方どおりに、正直にプログラミングするなら、次のような6行以上の処理(プログラム)になるでしょう。

「整数部分」 に 「小数」の整数部分を代入しろ
「小数第1位の数」 に 「小数」の小数第1位を代入しろ
もしも 「少数第1位の数 」が4以下 ならば
「整数部分」を表示しろ
そうでなければ
(「整数部分」+1)を表示しろ

しかし、もっと簡単な方法があります。

「整数部分」に(「小数」+ 0.50 )の整数部分を代入しろ
「整数部分」を表示しろ

これなら、たったの2行です。工夫すれば1行にもできます。注目すべきは小数第一位について「四捨」と「五入」で場合分けする必要がないところです。コンピューターで遅い処理の1つが場合分けです。これが無いのは大きいですね。

これがアルゴリズムを考えるということです。そして本来はアルゴリズムも「プログラミング教育」に入ります。むしろアルゴリズムの方が大切です。

「目的」と「手段」を分けて考える発想を養う

上で見たように、コンピューターを使いこなすということは、目的と手段を分けて考えることに他なりません。

「四捨五入を求める」という目的の実現方法は何通りも考える事ができます。視野を広げるほど、いろいろな手段が思いつきます。
そして上の例題では、たまたま「小数第1位を」四捨五入する条件だったので「0.5を足す」という短い計算方法が選択できたわけです。

プログラミング教育では、次のような取り組みを体験させる狙いがあります。

  • 答えが1つに定まらないような問題にチャレンジする。
  • 試行錯誤で最適解を見つける。

難問に対して「無理だ」と即答しては何も生まれません。正解が1つという発想を捨て、今できる最大限の答えを見つける発想を変えれば、できることが生まれます。そのように視野を広げて、手段を何通りも並べて、何度も試しながら、最適解を導いていくこと大切なのです。

またそのために、国語、算数、理科、社会、英語や美術、技術などの素養が必要です。逆に、勉強したことを使おうとするから身に着きやすくなる、という側面も出てくるでしょう。

今こそ理系的なプログラミング教室が必須!

ですから「ただ図面を見ながら組み立てるだけ」みたいなプログラミング教室には、絶対にしたくありませんでした。
また、時代や流行りに依存するような専門知識を詰め込んでも、価値がないと思いました。

かつて高校生がBASICというプログラミング言語を習わされて、それでセンター試験も受験しました。しかし今やBASICを使う最先端の仕事など、ほとんどありません。高校までの学校教育において、特定のプログラミング言語の用語や文法を覚えさせても意味がないのです。時代に合わせた職業訓練は専門学校の仕事です。
第一、みんながプログラマーになるわけではありません

そして実際のところ、「組み立てるだけ」とか「職業訓練の簡易版」のような小中学生向けのプログラミング教室が多いです。私はそういうプログラミング教室を教育とは見なしていません。もちろん趣味と割り切れば良いですが、私は少なくとも自分の子供にそれをやらせようとは思いません。

そうではなく、もっと根本的に、生徒たちの血肉になるような活動にしたいと思いました。
理数系の頭脳や論理的な思考力を、ちゃんと伸ばす活動にしたいと思いました。

知らないうちに、高度な数学的なセンスや図形のセンスが身に着いている。
知らないうちに、創造する喜びが体験できている。

そんなプログラミング教室にすべきだと思いました。

だから、もう自分でプログラミング教室を作るしかなかったのです。

マイクラミング

本来のプログラミング教育は、偏った専門知識を覚えさせたり、特定の技能を訓練するものではなく、子供たちが問題に立ち向かう基礎力を育てるものです。

マイクラミング」は、そんなプログラミング教室になっています。そうなるように教育改革後の学習指導要領をにらめっこしながら作りました。子供たちの頭を良くするために塾長が自ら開発!しました。

そして、テキストは本厚木校の髙橋先生にお願いして、小学生にも親しみやすい構成にしてもらいました。「プロボン」というキャラクターも生まれました。ありがとうございます。

生徒たちは、パソコンやプログラミングの専門用語なんて、ほとんど覚えません。いち早く課題を解決することやマインクラフトで建築を「創造」することに没頭できるようになっています。試行錯誤が大切なのであって、専門知識の暗記をしたいわけではないからです。

それでいながら、小学1年生がマイナスの数を理解し、計算もできるようになります。それどころか、高校2年生の空間ベクトルで習うはずのxyz座標を、小学生が理解して、使いこなしています。そのような数学の知識を活用してプログラミングを楽しんでいます。
そして、マインクラフトの世界に多くの魔法をもたらしています。

小学1年生でも取り組めるジュニアコースから、三角関数やデータ処理を扱うハイコースまで用意しました。実際ヒーローズ植田一本松校プログラミング教室には、小学1年生から高校3年生まで広い層が在籍しています。

日本人の「プログラミング」に対する誤解がちゃんと解けて、正しいプログラミング教育が、もっともっと盛り上がっていくことを願うばかりです。

まずは近隣の方から、ぜひお立ち寄りくださいませ。

 


名古屋市天白区の植田で塾を探すなら個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

塾の先生が作った頭が良くなるマイクラのプログラミング教室

マイクラ×Scratch3.0

塾長です。

私が開発したプログラミング教室の「マイクラミング」。PTA新聞に掲載するなどして本格的に生徒募集を始めてから約1年。色々な方から色々な形でご支援をいただきながら、お陰様でもうすぐ全国50教室になります。2020年度からプログラミング教育が必須化されますから、もっともっと広げていく必要があります。

なんでこんなに人気なのか。生徒たちや保護者さまたちにお聞きすると、やっぱりマインクラフトだそうです。マイクラミングでは、ForgeやModが利用できるフル機能のマインクラフトをそのままプログラミングすることができます。プログラミング専用のへぼいマインクラフトではなくて、Java版でできる。そんなディープな知識をどこで身に着けるのか分かりませんが、とにかく子供たちは、そういう拡張性が好きみたいです。しかも最新のスクラッチ3.0でプログラミングできるのは、今のところ世界で「マイクラミング」だけです。

ということでマイクラミングで実際にプログラミングをしている様子を、そのまま解説動画にしました。ご覧くださいませ。

【マイクラ】スクラッチ3.0でプログラミングってどうやるの!?実況中継でお見せします。教育改革対応!無料版で遊べます!

 

無料版で遊ぶ

無料版のインストール方法は、こちらのブログをご覧くださいませ。パソコンを設定するスキルが少し必要です。

スクラッチ3.0で始めるマインクラフトのプログラミング
https://mana-viva.jp/mana-viva/2019-01-08-scratch30-micraft

※ インストールや設定は全て自己責任でお願いします。
※ インターネットからソフトウェアをダウンロードして、指定のフォルダにインストールする作業が必要です。
※ 無料版についてのお問い合わせはお受けいたしませんので、あらかじめご了承くださいませ。

 

謝辞

SENSHIN社 EIJI KURAMOTO代表のブログ

マイクラミングのフリー版について、SENSHIN社さんのブログ内で詳細に取り上げていただきました。ありがとうございます。
インストールの仕方やプログラミングの実況動画まで、読みやすく親切に書かれています。お勧めです!

Scratch3.0【スクラッチ】マインクラフトを動かしてみた
https://ssit.jp/scratch3-minecraft/

 

T Umezawa さんの動画

動画の中で JavaプログラミングとScratchプログラムの違いを説明するために、T Umezawa さんの動画を紹介させていただきました。
Java でプログラミングを始めたい方は、こちらがお勧めです。

【Java】ゲームプログラミング超入門 Part01
https://youtu.be/FsRHdL_r0pE?list=PLJ86MSrhnFKVQPf-E8y0FZKv7uzR4L4Dt

 

 


名古屋市天白区の植田で塾を探すなら個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

プログラミングした中1英作文の人工知能が変な発言をする件

プログラミングの画面

塾長です。

夏休みも半ばを過ぎました。宿題はもう終わりましたか?

さて、植田中学1年生の宿題の1つに「英作文を100個を作る」というのが出ているそうです。そこで英作文をやってくれる人工知能をスクラッチでプログラミングしてみました。ところが自動作成される英文が変過ぎて笑えます。

「面倒なことはコンピューターにやらせる!」これからの時代はこれだ!

と言いたかったのですが、やっぱり宿題は真面目に取り組むしかなさそうです。

続きを読む

プログラミング教室では、どんなことをしているのですか?

マイクラ×Scratch3.0

こんにちは、塾長です。今年は冷夏と言われていたはずなのに、この暑さ。災害級です。皆様くれぐれもご無理をされないようにお願いします。

さて、プログラミング教室へのお問い合わせが増えてきました。

「どんなことをやるのですか?」
「学校でも始まると聞きました。体験してみたいです。」
「子供がやりたいと言ってます。体験できますか?」

はい、ぜひ、来て見て体験してください。百聞は一見に如かず。お待ちしております!

一方、プログラミング教育が良く分からない方もまだまだ多いはず。そこでお電話をいただく前に読んでいただけるよう、少し説明を綴ってみたいと思います。

続きを読む

プログラミング言語って何? お勧めはどれ?

プログラミングに夢中な生徒の写真

こんにちは!塾長の松下です。

昨日の午前中は、ヒーローズ西春校に行ってきました!

この夏から西春校さんもプログラミング教室を始めます。その準備を手伝ってきました。いよいよ北名古屋市のみなさんもマインクラフトでプログラミングを学べるようになりますよ!
乞うご期待です!!

午後からは植田一本松校でいつも通りプログラミング教室をしました。生徒がミッションを早くクリアしたので、残り時間を自由にしました。やっぱり子供たちは溶岩とかTNTが大好き。「数千個のTNTを爆発させる」というプログラムを作って遊んでいました。

プログラミングに関係する国家資格

IT系の国家資格と言えば、次の3つを押さえておく必要があります。この順番にレベルアップします。

  1. ITパスポート
  2. 基本情報技術者
  3. 応用情報技術者

中でもプログラミングの技能を問われるのが「基本情報技術者」です。毎年多くの人が受験します。

基本情報技術者とは?

主にプログラムの設計、開発を行う技術者の知識や技量を証明する資格です。国家試験に合格するともらえます。英検で言えば2級くらいに相当します。

商業高校や工業高校では、高校2年生くらいから学校で受験を勧められます。普通科でも科学部やデータサイエンス部など、IT系に興味のある人ならチェレンジすることがあるでしょう。もちろん、通信系やIT系に就職したら、会社から受験を勧めらることが多いです。

【悲報】COBOLが消えました。今後はPythonで。

これに関して、少し前、今年1月24日に衝撃的なニュースがありました。

2019年秋期の試験を最後にCOBOL(コボル)が廃止されるというのでます。代わりに2020年春期からはPython(パイソン)になるそうです。情報ソースは情報処理推進機構によるコチラの発表です。

え、コボル?、パイソン?

という人も多いでしょう。COBOLやPythonはプログラミング言語の種類です。

プログラミング言語とは?

例えば、ブログは日本語で書きます。曲は音符で書きます。計算は数式で書きます。化学変化は化学反応式で書きます。このように、何かを書き表すとき、それに合った表現方法(言語)が存在します。

コンピューターも同じで、コンピューターを使う目的ごとに表現方法や文法があります。それがプログラミング言語です。たくさんの種類があり、目的に応じて使い分けられています。

ところが国家資格で使えるプログラミング言語は、たったの4つしかありません。

国家試験で使えるプログラミング言語

基本情報技術者の資格試験では、プログラミングの技能が問われます。自分の得意なプログラム言語を選択して受験することができます。ただし、その選択肢が4つしかありません。しかも来年からそれが変わります。

これまでは次の4種類でした。

COBOL、Java、C言語、アセンブラ言語(CASL II)から1つ選択

それが2020年の春から

Python、Java、C言語、アセンブラ言語(CASL II)から1つ選択

に変更されます。国家資格を取れる4つのプログラミング言語から、COBOLが姿を消し、Pythonが登場したのです。こえれは事実上、

「COBOLはもう古い。」「Pythonがメジャーになった。」

と国が認めたに等しいです。だからニュースなんですね!

上で挙げた5つのプログラミング言語について、それぞれの特徴を簡単に説明します。

  • COBOL: 大型コンピュータで経理や成績管理といった事務処理をするのが得意
  • Python: どのパソコンでも動き、科学技術計算や人工知能による情報処理が得意
  • Java: どのパソコンでも動き、操作画面やゲームを作るのが得意
  • C言語: OSの開発、機械操作のアプリ、高機能で高速なアプリの開発が得意
  • CASL: ハードウェア本来の性能を引き出すのが得意

私が大学生のころまでは、COBOLを使えれば就職に有利でした。大企業の多くが大型コンピューターを持っていて、それを使うために必要だったからです。ところが、ここ数十年でデーターベースの技術が一般化し、同時にパソコンの性能が飛躍的に良くなってしまい、大型コンピューターが不要になってしまいました。今ではCOBOLで仕事をしている人を、ほとんど見かけません。

プログラミング言語にも栄枯盛衰があるのですね。

マイクラミングを支えるプログラミング言語たち

ちなみに、私たちのプログラミング教室「マイクラミング」を支えるプログラミング言語たちは、次のようになっています。

  • JavaScript: スクラッチの機能を拡張する部分と、生徒がログインする画面の開発に使いました
  • Python: スクラッチとマインクラフトをつなげる機能の開発に使いました
  • PHP: 生徒がログインする画面のサーバー開発に使いました
  • SQL: 生徒情報などを管理する機能の開発に使いました

JavaScriptはJavaの縮小版です。ブラウザの中だけで動作します。PHPやSQLなど国家資格には関係ないプログラム言語が出てきましたね。プログラム言語はとても種類が多いのです。私はマイクラミングを開発するために、これら全てのプログラミング言語を勉強しました。勉強は一生続くのです。

ちなみにマインクラフトそのものはJavaで作られているそうですよ。

そして生徒の皆さんが使うプログラミング言語はScratch(スクラッチ)です。

Scratchの次はPythonかJavaを学ぼう

来年度から小学校で、更に年度から中学校でプログラミング教育が必須化されます。

おそらく多くの小学校では Scratch(スクラッチ)というプログラミング言語が使われるでしょう。今まで色々な学校現場で使われてきた実績がありますし、何より無償で使えるからです。

もちろん私たちのプログラミング教室「マイクラミング」もスクラッチです。小学2年生から高校生まで通っています。

しかし、残念ながら、この Scratch(スクラッチ)では国家試験を受験できません。国家試験はプロの能力試験なので、プロが使わない言語では受験できないのです。
ただし、民間の試験ならあります。Scratchで能力を試したければ民間試験でチャレンジしましょう。

スクラッチが得意なのは、あくまでも学校教育や趣味の領域です。ですから、スクラッチでプログラミングを練習したら「次のステップ」へ進みましょう。

Scratchの次のステップとしてお勧めなのは、Python(パイソン)またはJava(ジャバ)です。

どちらも無料で始めることができます。また解説書やインターネット上の情報が豊富で調べやすいです。

どちらかというと、理系の学生はPython、ゲーム制作などクリエイターになりたい人はJavaを学んでみるとよいでしょう。

ただし就職してからPythonやJavaを使うかどうかは分かりません。しかし1つのプログラミング言語に精通しておけば、他のプログラミング言語を学ぶのが簡単になります。プログラミング言語には共通する考え方が多いからです。

C言語やCASLはお勧めじゃないの?

C言語は文法が多くて細かいです。難しいというよりは、めんどくさいです。ちょっとした処理を実現するにも、何十行ものプログラミングが必要になります。
「こういう時はこう作れ」的な定石をたくさん覚える必要があります。そして後述する「オブジェクト指向」に対応するためにC++言語という拡張版も学ぶ必要があります。
歴史の長い言語なので学びが多い一方、書籍が多すぎてピンキリです。良書を探すのに苦労します。身近に知見者がいれば、聞くのが一番でしょう。
そんなこんなで、マスターするまでの道のりが長いです。
その代わり、マスターしたら超強力なプログラミング言語になります。その道のプロになると決めたら取り組んでみてください。

CASLはマイコンなどのハードウェアを使うためのプログラミング言語です。ハードウェアの知識が必要になりますから、これも初学者にはお勧めしません。また実際に何かを作ろうとするとCASLは使えません。ハードウェアのメーカーごとにプログラミング言語が違うからです。CASLは練習用の言語と割り切った方が良いでしょう。

オブジェクト指向を学べ

それから、プログラミング言語とは別に、「オブジェクト指向」という考え方を、しっかり学んでおくことをおすすめします。

オブジェクト指向は、人間が物事の構造や関係をとらえる様子を、整理したり正確に記述したりするための技術です。

現代のプログラミング言語のほとんどは、その根底にオブジェクト指向があります。大きなプログラムや複雑なプログラムを考える時ほど、オブジェクト指向が必須になってきます。ぜに学んでみてください。きっと頭の中がすっきりするでしょう。

まとめ

国家資格の「基本情報処理技術者」を受験できるプログラミング言語は4つしかありません。そして今年でCOBOLが廃止され、来年からPythonが追加されます。

来年から小学校で必須化されるプログラミング教育ではScratchが大活躍します。

しかし仕事でScratchは使えません。ステップアップにはPythonかJavaが塾長のおすすめです。

プログラミング言語と並行して「オブジェクト指向」を学ぶと良いでしょう。頭を整理するのに役立つ技術です。

 


名古屋市天白区の植田で塾を探すなら、日進市赤池で塾を探すなら、個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

プログラミング教室のパソコンをパワーアップしたよ

ノートパソコンのメモリ増設をしている写真

マイクラミング開発者で元エンジニアの塾長です。エンジニアだったのは、もうかなり昔の話ですが。

さて、このゴールデンウィーク前後で、プログラミング教室の環境をパワーアップしました。
生徒にとって、より使いやすい環境にしました。
それで今年の連休は半分仕事でした。

「部活ばっかりで連休はありませんでした。全く楽しめませんでした。」
「僕と一緒だね。」

連休明けは、高校生の生徒とそんな会話で始まりました。

続きを読む

なぜ小学生のプログラミングはスクラッチが主流なのか?

小学生にはスクラッチが良い理由

こんばんは!塾長の松下です。

プログラミング教室の認知度が高まってきました。
あと1年ですからね、小学校でプログラミング教育が必須化されるまで。

ところでお母さん、お父さん、「プログラミング教育」と聞いて、どんなイメージが思い浮かびますか?

もしも次のようなイメージだったら大きな誤解です。
それは10年以上も前の話しで、今は違います。

続きを読む

プログラミング教室の体験会 今日も楽しかった!

マイクラミングのサムネイルです

木曜と土曜が満員になったので定員を増やします

本日も小学生向けにマイクラミングの体験会(定員2名)をしました。
わざわざ隣の学区から姉妹でお越しいただきました。

「マイクラはよく知っているけど、パソコン操作は初めて」

とのこと。
いざ体験してみるとパソコン操作は直ぐにこなせました。
高学年だけあって、のみ込みが早いです!

お父さまもお母さまも一緒になってプログラミングを楽しんでいただきました。
「僕もやりたいくらいです。」
とお父さまからお墨付きをいただいて、姉妹そろって2月から受講スタート!

これで土曜日の14時台が満員御礼になりました。
木曜日も満員です。

先週の体験会で「土曜日は午前中もやって欲しい」とご要望をいただきました。
ということで、そろそろ他の曜日や時間帯も拡大していきます!

マイクラミングの短いデモ動画を作りました

デモ用に動画を短くしました。

あと、YouTubeのカスタムサムネイルの使い方を覚えました。
やっとYouTubeの投稿の仕方が分かってきましたよ。
プログラミングの方が簡単に思えます・・・。

小学2年生が開眼し始めた!

木曜日に来ている小学2年生の男の子が急成長してきました。
最初のうちは、座標やマイナスの数を使いこなすのに苦労していました。

でも今では、自分で図面を描いて、座標を決めて、勝手にプログラミングしていきます。

スゴイ!

村人もびっくり

村人もビックリです。

最近では、繰り返し処理やタイマー処理も覚えてきました。

座標やマイナスの数をプログラミングで使いこなすうちに、物事を数字に置き換えて考えることができるようになってきたんですね。
将来が楽しみです。

 


名古屋市天白区の植田で塾を探すなら、日進市赤池で塾を探すなら、個別指導のヒーローズ!!

★ 直接のお問い合わせ ★
――――――――――――――――――――――
個別指導ヒーローズ 植田一本松校
〒468-0009
名古屋市天白区元植田1-202 金光ビル2F
TEL:052-893-9759
教室の様子(360度カメラ) http://urx.blue/HCgL

――――――――――――――――――――――
個別指導ヒーローズ 赤池校
〒470-0125
日進市赤池1丁目3002 福岡ビル2F
TEL:052-808-0552

教室の様子(360度カメラ) http://urx.blue/HCge