ホチキス先生の「プログラマーと呼ばれたい」

InfoPath & SQL Server !

Archive for the ‘Micro:bit’ Category

プログラミング教育の体系化(1) – 「小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)」を読み解く – プログラミング教育に対する誤解を払拭するために

with one comment

平成28年4月19日、文部科学省の初等中等教育局教育課程課教育課程企画室は、「小学校段階における論理的思考力や創造性、問題解決能力等の育成とプログラミング教育に関する有識者会議」を開催することとした。その趣旨は「世界に誇る日本の小学校教育の強みを生かしつつ、次世代に必要な資質・能力を、学校と地域・社会の連携・協働の中で育むことができるよう、小学校段階で育成すべき資質・能力と効果的なプログラミング教育の在り方や、効果的なプログラミング教育を実現するために必要な条件整備等について検討を行うため」としている。

小学校段階における論理的思考力や創造性、問題解決能力等の育成とプログラミング教育に関する有識者会議について(文部科学省)>
http://www.mext.go.jp/b_menu/shingi/chousa/shotou/122/houkoku/1370400.htm

この有識者会議は平成28年6月16日に「小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)」を発表した。これを受ける形で、文部科学省は平成29年3月に新しい小学校学習指導要領(平成29年告示)を発表した。この学習指導要領では新しくプログラミング教育が位置づけられることなり、平成30年度と31年度は移行期間であり、平成32年度すなわち令和2年度、2020年度から完全実施となる。

小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)(文部科学省)>
http://www.mext.go.jp/b_menu/shingi/chousa/shotou/122/attach/1372525.htm

小学校学習指導要領(平成29年告示)(文部科学省)>
http://www.mext.go.jp/component/a_menu/education/micro_detail/__icsFiles/afieldfile/2019/03/18/1413522_001.pdf

1.誤解をまねく表現

この「議論の取りまとめ」の冒頭には「有識者会議における議論の視野」と書かれた部分があり、どのような考え方で議論がすすめられ結論を出したかが簡潔にまとめられている。しかしここに誤解をまねく表現がある。それは2段目の文で、正確を期すために引用すると次のように書かれている。

「小学校段階におけるプログラミング教育については、学校と民間が連携した意欲的な取組が広がりつつある一方で、コーディング(プログラミング言語を用いた記述方法)を覚えることがプログラミング教育の目的であるとの誤解が広がりつつあるのではないかとの指摘もある。“小さいうちにコーディングを覚えさせないと子供が将来苦労するのではないか”といった保護者の心理からの過熱ぶりや、反対に“コーディングは時代によって変わるから、プログラミング教育に時間をかけることは全くの無駄ではないか”といった反応も、こうした誤解に基づくものではないかと考えられる。」(小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ) – 有識者会議における議論の視野)より

ここでは「コーディングを覚えることがプログラミング教育の目的ではない」のであり、保護者は子どもにコーディングを教えなければならないと心配する必要はないし、コーディングが時代によって変わっても今やろうとしているプログラミング教育は役に立つものである、と言っている。しかしコーディングを覚えなくもいい、と言っているのではなく、そもそもコーディングをしなくていいとも言っていない。コーディングは小学校でもしなければならないし教えなければならないはずだ。なぜならプログラミングをしなければ「プログラミング的思考」など身につくはずがないのだから。

しかしインターネットで「プログラミング教育」というキーワードで検索すると、いわゆる識者の意見として「プログラミング言語やコーディングを学ぶわけではない」といった誤解をしているものがみられる。プログラミング言語やコーディングそのものを否定的にとらえる考え方になってしまっているのだ。これは間違いである。

この原因の一端は、誤解をまねく上記の文にある。上記の文は、「コーディング」について「覚えること」がプログラミング教育の「目的ではない」と言っている。だから小学生にコーディングを覚えさせてテストで文法的に正しいコードが答えられることを求めることは間違いだし、コードを書けるようになることを目標にしてはいけない、と言っている。しかし授業ではコーディングを覚えさせなければならない。なぜならコーディングを覚えなければプログラムを書けないからだ。

2.授業ではコードを書かなければならない

前述の「有識者会議における議論の視野」には次の段にこう書いてある。「プログラミング教育とは、子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら、将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての「プログラミング的思考」などを育むことであり、コーディングを覚えることが目的ではない。こうしたプログラミング教育についての考え方や、小学校段階における具体的な在り方等を、下記3.や4.において示している。」(小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ) – 有識者会議における議論の視野)より

ここも婉曲でわかりにくい書き方がされているのだが、「子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら」というところは、要するに「プログラミングをさせる」ということだ。「コンピュータに意図した処理を行うよう指示する」ことは現時点ではまさに「コーディング」のことであり「ができるということを体験」は実際にコードを書いてコンピュータで実行し動いたことを確かめることだ。つまり小学生にはコーディングをさせ、自分で考えたコードが正しく動くということを体験させなければならない。そのためにはコードの書き方がわからなければならないし、開発ツールの使い方を覚えなければならないし、作ったコードを動かす方法も知らなければならない。

もちろん特定のプログラミング言語の書法を暗記してすらすらコーディングできるようになる必要はないし、そもそもテキスト型のコーディングでなくブロック型のコーディングでもよいだろう。重要なことは、コンピュータにやらせたい処理を自分で考えてプログラミングをし、失敗体験もしながら正しく動くプログラムを作り上げる体験をさせることであり、それにはコーディングを覚えなければならないはずだ。

この「コンピュータに意図した処理を行うよう指示することができるということを体験」という文は随所にみられる。婉曲ではあるが、これは「プログラミングを体験させる」ということである。つまり、小学校の授業では子どもたちにコードを書かせなければならない。プログラミング体験をさせなければならない。

そもそも「プログラミング的思考」はコードを書かずに身につくはずがない。このことはプログラマーなら知っている。当たり前だ。

3.職業プログラマーの養成も期待されている

前述の「有識者会議における議論の視野」の「4.小学校教育におけるプログラミング教育の在り方 – (3)教育課程外や学校外の学習機会とのつながり」には次の記述がある。

「小学校におけるプログラミング教育で、プログラミングに触れたことをきっかけとして、個人的に更に深く学んでみたいと思ったり、プログラミングに携わる職業を目指して学びたいという夢を持ったりする子供たちが増えてくることも期待される。」「プログラミングに興味を抱いた子供が、多様な才能を伸ばしていくことができるよう、民間で実施されている多様なプログラミング教育の機会や、土曜学習等における学習機会を個別に活用できるよう、都市部だけではなく全国を視野に入れ、官民連携して体制を整えていくことが求められる。」(小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ) – 有識者会議における議論の視野)より

これについてもインターネットの識者の意見として「プログラマーの養成を目指したものではない」といった極論がみられるが、「プログラミングに携わる職業」に就くにはプログラミングを知っておかなければならないし、職業プログラマーが育つことを期待しているのだ。これは国家的目標でもある。

他国のリーダーがこぞってプログラミング教育に言及するのも、プログラマーが育たないということは国家的な危機だからだ。これは大げさではない。近年の米中貿易摩擦も広範な通信技術に対する主導権争いである。日常生活において家電製品の多くはプログラムで制御されている。プログラムが必要ないのは単純な電熱器や扇風機のようなものくらいだろう。プログラマーがいなければ家電製品すら製造することが不可能になる。ましてや通信インフラを自国で開発、制御できないとなれば、もはや国家が破綻する。

もちろん直接的に職業プログラマーにならなくとも、およそ社会の各層での意思決定者たる人材はプログラミングのことを知っていなければならない。コンピュータやプログラミングを知らなければ意思決定を誤ることになるだろう。

令和2年、2020年の4月まであと9ヶ月であり、小学校の先生は教材研究などの取り組みをすすめていることだろう。各地でプログラミング研修会が開かれており筆者も呼ばれることがある。小学校では Scratch、Micro:bit、Minecraft などを使った実践が定着してきているが、今後は教材の作りこみに工夫が必要だろう。筆者の考えとしては、人感センサのような体感的なもの、サーボモーターなど動くものの制御を体験させることを推奨したい。そして今後は、小学校で基本的なプログラミング体験をした子どもたちが中学校や高等学校で発展的な学習をどうするのかが課題となるだろう。それは、もう、目の前にやってきている。

<次の記事>
プログラミング教育の体系化(2) – 「小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)」には中学校や高等学校でのプログラミング教育についても言及されている – 目標は「全ての高校生がプログラミングを問題解決に活用することを学べるようにする」こと
https://matsumotoyoshio.wordpress.com/2019/08/05/%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0%e6%95%99%e8%82%b2%e3%81%ae%e4%bd%93%e7%b3%bb%e5%8c%96%ef%bc%88%ef%bc%92%ef%bc%89-%e3%80%8c%e5%b0%8f%e5%ad%a6%e6%a0%a1%e6%ae%b5/

2019年8月1日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在16回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

令和元年度兵庫県私学教育情報化研究会第一回研修会の内容と資料 – 神戸学院大学附属中学校・高等学校 – 20190723

leave a comment »

令和元年(2019年)7月23日に「令和元年度兵庫県私学教育情報化研究会第一回研修会」で、「情報教育におけるプログラミング教育の現状と課題~学校現場の視点から~」の題で講演をさせていただき、Micro:bitとArduinoを使ったプログラミング実習について実習研修を行った。

講演の内容をかいつまんで説明すると、学習指導要領の改訂により「プログラミング教育」が注目されているが、本来は2000年の教科「情報」の導入からプログラミング教育が必要であったはずだということ、産業のあらゆる分野でプログラマーが必要となり、社会のあらゆる場面で情報機器が使われる現代において、すべての人間がプログラミング力を身に着けておくべきであること、そして今回の学習指導要領の改訂では、小学校では実際にプログラミングをする「体験」を通じてプログラミング的思考を育成すること、中学校では「ネットワークを利用した動的コンテンツの作成」すなわち動的Webページの実習など高度な内容が想定されていること、などをお話しした。

「小学校段階における論理的思考力や創造性、問題解決能力等の育成と プログラミング教育に関する有識者会議」の「議論のとりまとめ」には「コーディング(プログラミング言語を用いた記述方法)を覚えることがプログラミング教育の目的であるとの誤解が広がりつつある」や「時代を超えて普遍的に求められる力としての『プログラミング的思考』などを育むことであり、コーディングを覚えることが目的ではない。」といった記述があり、一部に「プログラミングはしなくてよい」といった誤解が生じているが、「子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら」のように婉曲的表現ながらプログラミングを実際にさせることが必要だと書かれている。ここを見落としてはならない。

小学校でブロック型のプログラミングを体験した子供たちに対して、中学校、高等学校でどのように体系的なプログラミング学習を行うかが焦眉の課題である。

<研修会の資料>

2019年7月29日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在16回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

 

Amazon で BBC Micro:bit を注文した

leave a comment »

本家、英BBCの Micro:bit を使ってみたいと思い Amazon で検索するとバルク品の英BBC Micro:bit がいくつかの業者から売られていることがわかった。

BBC_Microbit_Amazon_mid_640.png

リテール BOX と書かれた箱入りの英 BBC Micro:bit はおよそ 3,000円。それ以外にバルク品と書かれたものが、およそ 2千百円台からある。今回は試しにバルク品で 2,160円のものを発注した。アマゾン Prime 対応でクリスマスイブまでには届くようになっている。

Microbit_bulk_Amazon_mid_640.png

英 BBC 本家の Micro:bit がスイッチサイエンス社の Micro:bit と違いがあるのか、興味深い。

2018年12月22日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

Micro:bit をメンテナンスモードで起動する

leave a comment »

スイッチサイエンス社が開発した Micro:bit 互換機、Chibi:bit はファームウエアを書き換えることができ、それには本体のリセットボタンを押しながらコンピュータに接続して ISP モードで起動する。このことから、Micro:bit も同様の方法でファームウエアを書き換えることができるのではないかと考えた。

試しに Micro:bit のリセットボタンを押しながらコンピュータに接続すると、どうやらメンテナンスモードというものになるようだ。

microbit_maintenance_mode_mid_640.png

メンテナンスモードにすると、3つのファイルが見える。AUTO_RST.CFG、DETAILS.TXT、HELP_FAQ.HTM だ。このうち AUTO_RST.CFG は Micro:bit にプログラムである .hex ファイルを入れたときに自動的にリセットするか否かのモードを決めるファイルのようだ。DETAILS.TXT ファイルには DAPLink Firmware へのリンクの記述とバージョン情報、ビルド番号が書かれている。手持ちの Micro:bit は次のようなものだった。

—————————————————————————————————————–

DAPLink Firmware – see https://mbed.com/daplink
Version: 0234
Build: Oct 12 2015 14:39:34

—————————————————————————————————————–

Microbit_Maintenancemode_Details_mid_640.png

HELP_FAQ.HTM には mbed.com へのリンクが書かれているが、現時点ではリンクは切れておりエラーとなる。

arm_mbed_microbit_faq_error_mid_640.png

このメンテナンスモードで他にもなにかできることがありそうに思える。Micro:bit はまだまだ奥が深い。

2018年12月21日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

 


 

 

 

Micro:bit コンパチブルの教育用マイコンボード Chibi:bit のファームウエアを元に戻す

leave a comment »

Chibi:bit の新しいファームウエアが MBED で提供されていることを知りインストールした。しかしインストールすると Chibi:bit は今までと違う挙動をするようになった。それは、作ったプログラムを .hex ファイルとして送り込んだとき、Chibi:bit が再起動するが、そのまま稼働しなくなったのだ。

P1950900_chibibit_microbit_mid_640_480.jpg

それまではコンピュータに Chibi:bit を接続するとフォルダが開き、そこに .hex ファイルをコピーすると Chibi:bit はファイルを取り込んで自動的に再起動し、稼働始めるものだったが、新しいファームウエアでは Chibi:bit がファイルを取り込んで再起動するのだが、再起動してもコードが動かない。

これでは使い勝手が良くないので、ファームウエアを元に戻すことにした。ところが最初のファームウエアは取り出して保存していなかったので、別の Chibi:bit から取り出すことにした。Chibi:bit のリセットボタンを押したままコンピュータに接続し、ISP モードにする。するとファームウエアのファイルが見える。firmware.bin ファイルだ。

Chibibit_CRP_DISABLD_mid_640

この firmware.bin ファイルをコンピュータに取り出し、再びファームウエアを書き換えた Chibi:bit を接続してファームウエアを元に戻す。

ファームウエアを元に戻すと、購入時のように自動的に再起動してプログラムが走るようになった。

Written by Yoshio Matsumoto

2018年9月29日 at 7:43 PM

Micro:bit コンパチブルの教育用マイコンボード Chibi:bit のファームウエアを書き換える

leave a comment »

スイッチサイエンス社は魅力的なマイコンボード関連のデバイスを提供する日本の会社で、英BBCの Miucro:bit もいち早く取り扱いを始めた。しかしオリジナルの英BBC Micro:bit が搭載する Bluetooth モジュールは日本の技術基準適合証明、いわゆる「技適」の認証を受けておらず、国内での使用は電波法違反となる。そこでスイッチサイエンス社は Micro:bit 互換のマイコンボードを Chibi:bit の名前で初内している。これは日本の技適認証を受けており国内で問題なく使える。

P1950898_mid_640_480_microbit_chibibitP1950893_mid_640_480_microbit_chibibit

この Chibi:bit だが、コンパイルした .hex ファイルを入れてもエラーコードを出すようになり、調べたところファームウエアが提供されていることがわかった。スイッチサイエンス社のページに説明がある。

http://trac.switch-science.com/wiki/firmware-chibibit

Microbit_Chibibit_FirmwareUpdate_mid_640_480.png

ファームウエアのダウンロードリンク先は os.mbed.com だ。確かに Chibibit 本体にも mbed Enabled の表示がある。

https://os.mbed.com/teams/Switch-Science/wiki/Firmware-chibibit

このページを読むと、ファームウエアを書き換えるには Chibi:bit 本体を ISP モードにしてコンピュータに接続するとある。Chibi:bit を ISP モードにするには、本体のリセットスイッチを押しながらコンピュータに USB 接続する。すると Chibi:bit は CRP DISABLD の名前のデバイスとして認識される。

Chibibit_CRP_DISABLD_mid_640.png

そして Chibi:bit の CRP DISABLD ドライブの中には firmware.bin のファイルがある。これを削除し、ダウンロードした新しいファームウエアをコピーすればいい。

今回ダウンロードしたファームウエアは lpc11u35_ssci_chibi_if_crc_20160929.bin だった。ところがこのファームウエアに交換したところ、Chibi:bit に .hex ファイルをコピーし再起動したときに通常動作せず、いちど本体をコンピュータから取り出して USB を接続しなおすか、本体のリセットスイッチを押さなければならなくなった。

これは実習にひと手間かかる。

 

Written by Yoshio Matsumoto

2018年9月27日 at 5:49 PM

カテゴリー: Chibi:bit, IoT, Micro:bit, 情報教育

Micro:bit によるプログラミング実習 – Chibi:bit の panic code または sad face

leave a comment »

スイッチサイエンス社が作った Micro:bit 互換の Chibi:bit で実習をしているが不具合が出るようになった。Microsoft の MakeCode のブロックエディターでコンパイルした .hex ファイルが動かないのだ。そして Chibi:bit 本体には通称 sad face と呼ばれるエラーマークとエラーコードが表示される。

P1950889_mid_640_480P1950888_mid_640_480P1950887_edit_640_480P1950886_edit_640_480

この表示からはエラーコード 050 だとわかる。Micro:bit のエラーコードについては、Microbit.org に記述がある。

https://microbit.org/guide/hardware/error-codes/

Microbit_Error_Code_mid_640_480

しかしここには2桁のエラーコードのいくつかについてしか記述がない。仮に 50 だとすると An error occurred with the micro:bit’s accelerometer component.  であり加速度センサのエラーだ。しかしプログラムは加速度センサを使っていない、LEDの表示を切り替えるだけのシンプルなコードだ。

ページ内のリンクに Check out our Knowledgebase article for additional information about micro:bit errors. がある。これは support.microbit.org にリンクしている。

https://support.microbit.org/support/solutions/articles/19000016969-what-does-the-number-after-the-sad-face-micro-bit-mean-

Microbit_Error_Code_2_mid_640_480.png

ここを見ると、050 エラーは Javascript Blocks Editor に関係があるようだ。確かにエラーが出る以前にブロックエディターからダウンロードした .hex ファイルは問題なく Chibi:bit にコピーして正しく動作する。だから Javascript Blocks Editor のコンパイラに何らかの問題があるような気がする。

Written by Yoshio Matsumoto

2018年9月20日 at 5:08 PM

カテゴリー: Chibi:bit, IoT, Micro:bit, 情報教育