福野泰介の一日一創 - create every day

プログラミングD分類、鯖江市では全小学校でIchigoJamを使ったプログラミングクラブとキーボードはじめのいっぽ

2018/12/12
#KidsIT #IchigoJam 

2015年度からスタートし、今年2018年度からは全13校に広まったクラブ活動としてのプログラミングD分類
4年生-6年生が対象、希望した特定の児童が参加する教育課程内の活動である、クラブ活動。
教科内で学ぶB分類で興味を持ったこどもがより深く学ぶ機会となります。


鯖江市立吉川小学校でのクラブ活動、今回2回目。45分という限られた時間をいかに楽しく学べるか?
1回目では、こどもパソコンIchigoJamのつなぎかた・かたづけかた・きほん。

今回は復習も兼ねて、LEDとWAITコマンドを組み合わせで自分の思ったように制御するLED、計算、繰り返しを使ったエルチカゲーム、キーボード・ディスプレイを切り離したロボットづくりまで。

授業数逼迫のため、クラブ活動が月に1度程度など、間隔が空きがちなので、楽しくインパクトある学びと復習が大事。


キーボードと、少しずつ仲良くなっていく様子がかわいい!

プログラミングに行く前に、キーボードで遊んでおくのが良さそうです。

IchigoJamではじめるキーボード
1. キーボードで A エンターで返事がくるよ
2. A 押しっぱなしで、連続するよ
3. [BS] バックスペースで消しゴム代わり!
4. LED1 でつくよ!
5. LED0 で消えるよ!
6. VIDEO5 で文字が巨大化!
7. ALTキーを押しながら C でネコでるよ!
8. SHIFTキーを押しながら 1 でビックリマーク
9. SHIFTキーを押しながら め ではてなマーク
10. + をだしてみよう!
11. ?1+1 で、エンター、こたえは?
12. ?5*60 で、エンター、こたえは?

まずは絵文字で押しながらの感覚を楽しくつかんでもらって、SHIFTキーでキーに書いてある上の文字がでることを体感すれば、あとはどんどんプログラムを打ち込んでいけるはず。


「キー入力で音が鳴る 大文字小文字表示付き on IchigoJam」( IchigoJam web で動かす
小学校英語で必須な、アルファベット大文字小文字の習得用に、極力短くつくりました。

10 VIDEO5 20 K=INKEY():IF K BEEP K:LC 2,2:?CHR$(K),CHR$(K+32) 30 GOTO 20 RUN

保存しておき、ボタンを押しながら起動で、未就学児用のおもちゃにもできます!

SAVE0

プログラミングの英才教育、はじめのいっぽ!


学習指導要領に例示されたものから、学校外での活動まで、プログラミング教育6分類

D分類. クラブ活動など、特定の児童を対象として実施するもの
2017/06/17 福井大学1年生が活躍!小学校のクラブ活動としてのプログラミング体験、課題を解決するプリントづくり
2015/07/08 IchigoJam白刃取りゲーム - 東小学校プログラミングクラブ
2015/06/03 ステップバイステップでスロットゲームをプログラミング!
2014/11/05 BASICに目を輝かせる小学生!県内初のプログラミングクラブ20名にこどもパソコン寄贈 鯖江東小学校クラブ活動
2014/10/22 プログラミングを小学生からの始めた方がいい3つの理由 鯖江東小学校でプログラミング講座スタート

B分類 2018/12/06 動画&スライド公開、プログラミングB分類、総合と英語2コマ使った「はじめてのプログラミング」 - 鯖江市進徳小学校でモデル授業

円形WS2812Bx2でお手軽工作エモメガネペンダント! IoTプログラミングで明日を創ろう - 福井市美山中学校会社訪問&IoT体験

2018/12/10
#IchigoJam #maker #IoT #fukui 

福井市美山中学校の1年生全員24名が、株式会社jig.jpの本店所在地、めがね会館訪問してくれました!
一億総プログラミング必修化時代、中学生にも楽しく体験してもらいたいですね!


はじめての電子工作は、LEDの差し込みから!


パソコン(IchigoJam)に、入力(キーボード)、出力(ディスプレイ)、電源(microUSB)を接続してスイッチオン!


たっぷり2時間、はじめてのプログラミングから、ネットワークの基本、ゲームづくり、IoT化まで!楽しんでもらえたようで、何より! 学校に戻って、いろいろアイデアを出すとのこと。実現に向けてぜひ協力しますよ!

今日の装備、エモペンダントをアップグレード!

ミニエモメガネペンダント!


円形WS2812Bをもうひとつ、L時ピンヘッダーの1ピンをペンチで曲げます。


作ってあった左側の円形LEDのDOUT端子から、右側円形LEDのDIN端子に線材をはんだづけ!


24コのWS2812Bをぐるぐると回す制御の実験!


プログラムはこんな感じ!

10 POKE#700,240,181,68,24,24*3,32,13,73,0,34,114,182,128,37,35,120,1,52,210,67,10,96,3,39,10,38,43,66,1,208,10,39,3,38,1,63,253,209,210,67,10,96,1,62,253,209,109,8,239,209,1,56,234,209,98,182,240,189 11 POKE#73A,0,0,0,1,0,80 15 OUT11,0:D=#800:W=2:CLT:F=0 16 IF BTN() R=RND(1):CONT 20 FORI=0TO2:C=RND(1000):GSB@PUTC:U=USR(#700,D):GSB@ROTM:GSB@ROTM:GSB@ROTM:GSB@ROTM:NEXT 30 GSB@ROTM 40 IF BTN() F=1:C=RND(1000):GSB@PUTC:CLT 42 IF F && TICK()>5*60 F=0:GOTO 20 44 IF TICK()>180*60 C=0:FORI=0TO11:GSB@PUTC:GSB@ROTM:U=USR(#700,D):WAITW:NEXT:SLEEP 50 GOTO 30 80 @ROTL:A=PEEK(D):B=PEEK(D+1):C=PEEK(D+2):COPYD,D+3,11*3:POKED+11*3,A,B,C:RTN 90 @ROTR:A=PEEK(D+33):B=PEEK(D+34):C=PEEK(D+35):COPYD+12*3-1,D+11*3-1,-11*3:POKED,A,B,C:RTN 100 @ROTM:GSB@ROTL:D=D+12*3:GSB@ROTR:D=D-12*3:WAITW:U=USR(#700,D):RTN 110 @PUTC:POKED+3,0,0,0,C/100,C/10%10,C%10:POKED+12*3,C/100,C/10%10,C%10,0,0,0:RTN

80-90行 COPYコマンドを使って、左右の円形LEDを、右回転と左回転する @ROTR、@ROTL がポイント!
16行 ボタンが押されている間ランダムを回すことで、起動時のパターンを変更
10-11行 WS2812B制御用ドライバ、Armマシン語プログラム

links
- 円形WS2812B x IchigoDake x DakeCap = エモペンダント
- はじめてのマシン語 - IchigoJamではじめるArmマシン語その1(もっと深く知りたい人へ)

円形WS2812B x IchigoDake x DakeCap = エモペンダント

2018/12/09
#IchigoJam #maker 

まちがキラキラしがちな12月、電飾も身近なコンピューター制御。
エモグラスに触発され、手軽に装備できて、映えてエモい、ペンダントタイプを作りました。

ぐるぐる回る発光パターンを、ランダムに3秒置きに切り替えます。ボタンを押したら強制切り替え!


WS2812Bが12コ、円形にはんだづけされたモノ「waves WS2812B 12個 5V 円形 リング
L字ピンヘッダーを3ピン使ってDIN/VCC/GNDにはんだづけ、そのまま挿すだけ!
もうひとつを反対側にさせば、メガネ型にもできそう!

IchigoJam BASICのプログラム

10 POKE#700,240,181,68,24,12*3,32,13,73,0,34,114,182,128,37,35,120,1,52,210,67,10,96,3,39,10,38,43,66,1,208,10,39,3,38,1,63,253,209,210,67,10,96,1,62,253,209,109,8,239,209,1,56,234,209,98,182,240,189 11 POKE#73A,0,0,0,1,0,80 15 OUT11,0 20 CLT:H=0:V=10:S=100:X=RND(2):Y=RND(2):Z=RND(2):W=RND(10) 30 COPY#800,#803,11*3 40 GSB@HSV2RGB:POKE#800+11*3,X*G,Y*R,Z*B:H=(H+30)%360 50 WAIT W 60 U=USR(#700,#800) 70 IF TICK()>5*60 OR BTN() GOTO 20 ELSE GOTO30 100 @HSV2RGB:R=V:G=V:B=V:IF S=0 RTN 110 D=H/60%6:C=V-(59-H%60)*V/60*S/100:E=V-H%60*V/60*S/100:F=V*(100-S)/100 120 IF!DG=C:B=F 130 IFD=1R=E:B=F 140 IFD=2R=F:B=C 150 IFD=3R=F:G=E 160 IFD=4R=C:G=F 170 IFD=5G=F:B=E 180 RTN

10-15行 準備:左側CN4のVCCとGNDの隣、IN4が使えると都合がよかったので、OUT11,0 でIN4をOUTに切り替えて、マシン語でアドレス #50000100 を制御しています。(参考、LPC1114 GPIOアドレス
20-70行 メインループ:発光パターン生成
100-180行 サブルーチン:色相H、彩度S、明度Vを光の三原色赤R、緑G、青Bに変換


DakeCap(販売準備中)に、単4電池2本の電池ケースをはんだづけ。


電源を切って置く時は、DakeCapに裏刺し!

links
- 企業の枠を超えたプログラミングと電子工作を広める「KidsVenture」 in 大阪(エモグラス活躍)
- 光るネクタイ IoTie 小型化 ver1.1
- WS2812B x IchigoJamでエモいウェアラブル「イチゴ帽子」プログラミング入門とマシン語、舞鶴x鯖江コラボに向けて

おまけ、asm15 Armマシン語プログラム WS2812B IN4用ドライバ

' DOUT WS2812B DOUT [R1]を変更で他のピンにも変更可能 ' R0 - data count 30コ固定 ' R1 - GPIO address ' R2 - OUT value 0/#FF ' R3 - data value ' R4 - data address G1,R1,B1,G2,R2,B2 .... ' R5 - bit count ' R6 - wait count buf ' R7 - wait count @WS2812B PUSH {LR,R4,R5,R6,R7} R4=R0+R1 R0=30*3 R1=[@DOUT]L R2=0 CPSID @LOOP_DATA R5=#80 R3=[R4] R4+=1 @LOOP_BIT R2=~R2 [R1]L=R2 R7=3 '(3*4+1)=13 <- 16.8+-7.2 R6=10 '(10*4+1)=41 <- 43.2+-7.2 R3&R5 IF 0 GOTO @SKIP R7=10 '(10*4+1)=41 <- 43.2+-7.2 R6=3 '(3*4+1)=13 <- 16.8+-7.2 @SKIP R7-=1 'wait R7*4+1 clock IF !0 GOTO -1 R2=~R2 [R1]L=R2 R6-=1 'wait R6*4+1 clock IF !0 GOTO -1 R5=R5>>1 IF !0 GOTO @LOOP_BIT R0-=1 '+6clock IF !0 GOTO @LOOP_DATA CPSIE POP {PC,R4,R5,R6,R7} 'RET @DOUT DATA L #50000100 'IN4

今度は算数のスライド公開、プログラミングB分類「30m走ゲームで学ぶ、はやさとプログラミングとIoT」 - 鯖江東小学校の総合的な学習の時間「ふるさと教育」

2018/12/07
#KidsIT #IchigoJam #movie 

今年で4年目、めがね会館最寄りの小学校、鯖江東小学校「ふるさと教育」
5年生はNS松田さん、6年生は福野が担当。
先生からのリクエストもあって、今日のテーマは小学6年生の鬼門!?の「速さ」!
(昨日の「英語とプログラミング」に続き2日連続)

30m走ゲーム」をスライド化! 「速さ - さんすうでプログラミング with Ichigojam (PDF)

こちらダイジェスト動画。
LEDで制御でコンピューターの速さと操作を復習して、30m走ゲームづくり、タイムから距離を算出して、IoT化してもりあがるネット対戦!

こちら本日作成、30m走ゲーム(20行のキャラクターは、ALT+Cでネコ、ALT+Vでイチゴなどご自由に!)

10 CLT:X=0 20 CLS:LC X,15:?”O” 30 IF INKEY()!=28 CONT 40 IF INKEY()!=29 CONT 50 X=X+1 60 IF X<=30 GOTO 20 70 T=TICK()*10/6 80 ?T 90 V=10800/T:?V

ネットにつながるコンピューター、IoT化するのはこの1行

100 IOT.OUT V

ぞくぞく届く30m走のスコア、時速データを前のスクリーンにヒストグラムで表示していると、すごい勢いでチートされちゃいました(動画参照)。 さすが4年前からプログラミングクラブがある小学校!


去年の復習を兼ねて、エルチカ(LEDをチカチカさせる制御の基本)から!

キーボードに慣れているかどうかの差が大きく、すぐ終わってサポートしてくれるコもいれば、シフトキーの使い方に戸惑うコも。 小学1-2年生の内に、教室で使える「IchigoJamスクールセット」や「IchigoJamスピードパック」で、合間時間に少しずつ楽しく慣れておくのがオススメです!


算数の苦手意識、少し減ったようで何より!
また楽しく学べる教材作ってみようと思います。

自動運転車も登場、松田さんの授業の様子はこちら!
Cool shining in your way, let’s program the 2D Christmas tree! / 君の光らせ方でカッコよく、2Dクリスマスツリーをプログラミングしよう! – about yrm

小学校でのプログラミング教育について話し合う「第4回こどもプログラミングサミット」12/26開催!

links
- 動画&スライド公開、プログラミングB分類、総合と英語2コマ使った「はじめてのプログラミング」 - 鯖江市進徳小学校でモデル授業
- 小学五年生、一人2台のコンピューターを持つとどうなるか? 鯖江東小学校でふるさと教育
- 小学5-6年生全員!小学生プログラミング「ふるさと教育」ITのまちづくりの第一歩
- 子供の夢に未来あり! 鯖江の小6が考えた道具とプログラミング教育に響く言葉
- プログラミング楽しい! 鯖江東小5、6年生 専門家に習い挑戦 | 社会 | 福井のニュース | 福井新聞D刊

動画&スライド公開、プログラミングB分類、総合と英語2コマ使った「はじめてのプログラミング」 - 鯖江市進徳小学校でモデル授業

2018/12/06
#KidsIT #IchigoJam #movie 

小学校プログラミング教育の手引」のB分類。 鯖江市進徳小学校にて、プログラミング教育モデル授業。総合と英語の2コマ、IchigoJamを使った「プログラミングの楽しさを知ろう」動画公開です!


伝えたいことは、意外と安くて、意外とすごくて、意外とかわいいこと。
コンピューターが身近にあることは、こどもはとっくに知っています。
だから、もう一歩、楽しいプログラミングの世界の入り口へと誘いましょう!

はじめてのプログラミング with IchigoJam (PDF)

LEDの制御と、時間の制御(WAIT)で自在にLEDをコントロール。
ハイライトは、保存(SAVE)した後、スイッチオフ、一旦ケーブル抜いて、IchigoJamのボタンを押しながらスイッチオン! 手元で光りだす、自分たちで作ったプログラム!

えいごでプログラミング with IchigoJam (PDF)

おなじみ「かわくだりゲーム」を英語分多めで紹介しました。
LOCATEは、場所を指定する英単語。GOTO 20は「go to 20」20へ行けという英単語。
スゴイ勢いで迫る敵キャラに大はしゃぎ!(19:00〜

ゆっくりにするときは、そう、1コマ目に使った「待って」を表すWAIT。
IFは「もし」、条件によって動きが変わるよ・・・などと、英単語がちょっと使えるとコンピューターだって動かせちゃう。


ふたりで1台、順番に協力しながら取り組むスタイル。交代を基本に、キーボードの左右で守備範囲を分ける斬新スタイルなど、最初はちょっと大変なキーボードを打つことをそれぞれ楽しんでやってくれてました。


使用機材は、IchigoJam S + バッテリーを使った準備片付けラクラク、IchigoJamスピードパック


進徳小学校4年1組のみなさん、楽しく受けてくれてありがとう!!

4年生向けに、ペアで行う、45分でエルチカロボ、45分でかわくだりゲーム。
キーボードが不慣れなコが居ても、余裕持って進められ、こどもたちも100%楽しんでくれる、ひとつの完成形!

みんなもっとやりたいコも100%! ぜひ空いた時間、「はじめのいっぽ&ミニゲームズ」で、復習したり、「IchigoJamプリント」を使って、いろいろ体験できる時間や、学校の遊具としてIchigoJamカフェをつくるとかオススメです!

文科省、高専機構も後援「PCNこどもプロコン」へのチャレンジもぜひ!

小学校でのプログラミング教育について話し合う「第4回こどもプログラミングサミット」12/26開催!

links
- 今度は算数のスライド公開、プログラミングB分類「30m走ゲームで学ぶ、はやさとプログラミングとIoT」 - 鯖江東小学校の総合的な学習の時間「ふるさと教育」

プログラミングB分類と小6算数、30m走ゲームと速さの計算

2018/12/04
#KidsIT #IchigoJam 

2020年からの小学校プログラミング必修化、先月「小学校プログラミング教育の手引」が第二版へと改訂されました。 英語や算数など、各教科での実施となるB分類。今週、鯖江の進徳小学校と鯖江東小学校で実施予定です。

こちら、新作、30m走ゲーム!

30m走ゲーム、作り方

10 CLT:X=0 20 CLS:LC X,15:?"O" 30 IF INKEY()!=28 CONT 40 IF INKEY()!=29 CONT 50 X=X+1 60 GOTO 20

キャラクターを変えるには、20行を次のように改造。(ALT+RでもOKです)

20 CLS:LC X,15:?CHR$(252)

パタパタ走るアニメーションにするには、35行を追加。(ALT+SでもOKです)

35 LC X,15:?CHR$(251)

どこまでも走るだけではおもしろくないので、1コマ1mと見立てて30m未満なら繰り返し、とIFで条件を付けます。

60 IF X<30 GOTO 20

タイムを測ります。

70 T=TICK()*10/6 80 ?T

1/100秒単位で表示されるタイム。100で1秒の意味。
(解説:TICK()は1秒に60進むので、60で割って100をかけると1/100秒単位になりますが、先に60で割ってしまうと小数点以下が切り捨てられてしまいます。なので、先に100をかけて60で割ります。これは、10をかけて6で割っても同じ意味なので、*10/6とします)

30m走の速さを、平均時速として計算してみましょう。

90 V=10800/T:?V;"km/h"

(解説:30mをT/100秒かけて走ったことは、0.03kmをT/100*60*60時間かけて走ったことと同じです。よって時速(km/h)は、0.03/(T/100*60*60) = 10800/T と計算できます)

タイムをかっこよく、小数点付き表示にするには、このようにすればOK!

80 ?T/100;".";T/10%10;T%10;"sec"

30m走ゲーム、プログラム全文はこちら

10 CLT:X=0 20 CLS:LC X,15:?CHR$(252) 30 IF INKEY()!=28 CONT 35 LC X,15:?CHR$(251) 40 IF INKEY()!=29 CONT 50 X=X+1 60 IF X<30 GOTO 20 70 T=TICK()*10/6 80 ?T/100;".";T/10%10;T%10;"sec" 90 V=10800/T:?V;"km/h"

(IchigoJam web で、遊んでみる - 左右キーで走る、もう一度は、RUN、エンター)

おまけ
IoT対応ファームのIchigoSodaを使うと、たった1行でネット対戦30m走ゲームになります!

100 IOT.OUT T

つまづきやすいところも、分かりづらいところも、ゲームとプログラミングで楽しく克服する方法を身につければ怖くない!

links
- 小学校段階のプログラミングに関する学習活動の分類(例)でまとめる鯖江の活動 - 教育の情報化フォーラム
- 小学校プログラミング授業、低学年から高学年まで全部IchigoJam!? / 東京都小金井市前原小学校の授業参観と講演
- 小学校プログラミング教育の手引:文部科学省

IchigoJamとsakura.ioでつくるポケベル! BASICプログラム6行の実装でなんとカナが8文字表示できる

2018/12/03
#maker #IchigoJam #IoT 

ポケベル、おつかれさま! 記念に、IchigoJamでポケベル風を作りました。(通信料は月額64円/1万回受信
ポケベル、来年9月終了へ(共同通信) - Yahoo!ニュース

開始はなんと、50年前の1968年(無線呼び出し - Wikipedia)、1996年、高専内でも普及、公衆電話から数字で送るメッセージ、やりました! その後すぐにPHSへと移り変わりつつも、ポケベル入力(ベル打ち)は最強でした。


スマホや、パソコンから8文字メッセージを入れて、送信ボタン、ビープ音がなってディスプレイに表示。なかなかのポケベル感。

sakura.ioからの受信コマンドはこんな感じ!(正常受信でF=1となる)

LET[0],48,48:?I2CR(79,#800,3,#820,22):F=[16]!=5

こちらがポケベルプログラム for IchigoJam x sakura.io。
バイナリを受け取ったとして、受け取った最大8文字を画面に大きく表示(VIDEO 5)し、ビープ音を鳴らす

10 VIDEO 5 20 LET[0],48,48:?I2CR(79,#800,3,#820,22):F=[16]!=5:S=#824:POKE S+8,0 30 IF !F WAIT 10:GOTO 20 40 LC 0,2:?STR$(S) 50 PLAY"O5 A8R64A2R A8R64A2" 60 GOTO 20

送信は国野亘さんによる「Message IoT - sakura.io」を使ってみました! TokenやModuleの保存ができて便利です。とても丁寧な解説があるので、合わせてご覧ください!「ボクにもわかる IchigoJam用 IchigoSoda / sakura.io の接続方法

IoT時代のポケベルは応答もできます。
ボタンが押されていたら「了解」の意味で「1」を返してみましょう。(for βファーム)

25 IF BTN() IOT.OUT 1:WAIT 60:GOTO 20

用途に合わせていろいろ改造ください!

links
- ボクにもわかる IchigoJam用 IchigoSoda / sakura.io の接続方法
- IchigoJam x sakura.io でつくる格安IoTチャットデバイス
- Making of IoP = Internet of Pager(ポケベル@ja) / jig hackathon 2017

企業の枠を超えたプログラミングと電子工作を広める「KidsVenture」 in 大阪

2018/12/02
#KidsIT #maker #osaka #IchigoJam 

こども起業家創出目指す「KidsVenture
2018年、大阪最終イベントははんだづけ、キラキラ、ロボット、自動運転まで活動の集大成!

KidsVenture加盟企業、さくらインターネット、ビットスター、共立電子産業、アイティプロジェクト、ナチュラルスタイル、jig.jp、大阪、東京、札幌、仙台、福井から大集合!


IchigoJamのはんだづけからスタート


自分でつくったパソコンで、早速プログラミングに挑戦です!


電気の流れと合わせて、LEDを接続する電子工作はじめのいっぽ!


接続したLEDをコントロールするのはプログラム!


飾り付け!お家でも飾ってね!


共立電子産業、長者原さんからの激励、なんとかしようとする心がすべての原点!
限界は低いけど意外と奥が深いIchigoJamは、修行にぴったり!


裏では、大人向けのプログラミング講座、人気かつとっても熱心!
自宅でぜひ、こどもたちには紹介しなかったゲームづくりをご披露くださいー


一緒についてきたお子様、休憩時間用に展示も充実!
IchigoJamゲームコーナーには、8方向、縦横無尽に飛び回る!SPACE ATTACK、物理ボタンとレジンLEDがかわいいもぐらたたき!


その場でハイスコア付き、横スクロールアクションゲームに魔改造したかわくだりゲーム
若干おかしなゲームバランスがまた中毒性を持ったようで、ハマってました!


大人も楽しいミニコンテスト、かわくだりゲーム魔改造コンテストや、ライブコーディングなどの余興にも、ぜひどうぞ!


ミニオンズのコスプレメガネ 880円」をベースに「WS2812B 12個 円形 679円」を2コ付け制御!


自動運転、大人が乗っても大丈夫!


アイロンビーズは、大人にも大人気!


アイロンビーズでお手軽立体作品!iPadを裏にひいて設計図化するのも良さそう。
配置データの標準化と、5つ星オープンデータ化もしたいですねっ!


自分たちで作ったキラキラ電飾をバックに記念撮影!


高専狙う中学3年生!再開、楽しみにしてますっ


忘年会スタート!おでん!


エモグラスをかけると、誰でも自然と笑顔に!


IchigoJam育ての親、ナチュラルスタイルとPCNの代表、松田さん到着!


大阪発のエモグラス!メガネの国、鯖江も負けてられないですね!


とーとつにスタート、第一回 SAKURA.Jam 表面実装はんだづけ大会!
大人も子供も楽しい、はんだづけ!(さくらさんからのギフトバージョンは、表面実装はんだづけは不要なのでご安心ください)


優勝は、共立電子産業の岩田さん!さすが!(福野は3位)


さくらインターネットのロゴバリエーション!
コーポレートロゴへ込めた想い | 20周年記念 | さくらインターネット


上下、さくらの花びら揃いました!(両方白もOK!


始まる、表面実装レクチャー


そして、第二回大会!


共立さんのエモグラス試作基板!LPC1114添付モデルもぜひっ


KidsVentureの軌跡。
ルワンダ、フィリピン、宇宙(?)まで、いろいろあったKidsVenture。
きっとこれから、もっといろいろあります!

links
- 噂のSAKURA.Jamを高火力に魔改造!KidsVentureは挑戦意欲溢れる次世代の創出に貢献中! – about yrm
- KidsVenture

福井高専のIT系部活、地球物理学研究会、通称「なまず」のふりかえり

2018/12/01
#IchigoJam #tokyo #kosen #kosenit #doc 

活躍する高専生の鍵は、IT系部活にあり!
高専IT系部活 #kosenit Advent Calendar 2018
私、福野泰介が福井高専在学中に入っていたIT系部活なまずを紹介!

1. 誘い
1995年、同じ中学校から福井高専へ行った学科違いの友達との通学中、物理の先生、岡本さんがやっている同好会的な活動「なまず」に行くと、「ぷよぷよ」のソースコードがあると聞く。 そんなことあるわけないだろうと入った研究室にあった、当時高かったPC-98と、ぷよぷよ風同人ゲーム。ソースコードのことはそっちのけ、対戦にハマる。

2. なぜ、なまず?
岡本さんは地震の専門家。福井県内に設置された地震に関するデータを収集し、地震予測などの研究をいろんな学科の学生が手伝う感じ。部活(当時は、班と呼んだ)でも、同好会でもない、今思うと大学のゼミ的なものだった。 その手法は空中の電磁波や、地中内の地電位差などいろいろで、かつては、なまずを飼っていたとかで通称「なまず」と呼ばれていた。流れで、なんとなく入会。 2つ上の同電子情報工学科の先輩、けんちゃん(現、九州大学 久住さん)からアカウント名を決めてと言われて、答えた「uni(うに)」。なんだかカッコ良さそうなUNIXから取った名前。後に会社名としても使うことになる。

3. まずは文法
日々多量に生み出される地震関係データがテキスト形式で並んだデータを処理するのに、なるほど、C言語はぴったり。 とりあえずC言語の教科書を借りて、文字列処理のややこしさと楽しさにハマり、K&Rスタイルのみ許されたMSXでのCコンパイラ用にモダンな記法コンバータなどを作っていた。 家で使っていたMSXturboRでは、C言語の"Hello World!"に1分かかっていたコンパイル時間が、なまずにあったPC-98では1秒。MSX時代の終了を悟る。

4. アルゴリズムやれ!
バイナリデータファイルを16進数として表示するダンププログラムを何度も作って遊んでいた頃、先輩、けんちゃんからプログラミング言語の文法終わったらアルゴリズムやれ、とアルゴリズム辞典という書籍を渡される。 データ構造やソートなど、実現したいことをどうプログラムで表現するかの辞典。 みんなで競っていたPC-98のタイピングゲーム「MikaType」風をC言語で作るときに、リスト構造を使ってみたり、番兵を置いてみたりと大いに役だった。

5. パソコンを組み立てよう
Windows前夜、黒背景に白文字というIchigoJamのような画面が標準だったDOS環境、日本語化されたDOS/Vが登場し、パソコン組み立て時代が到来。 DOS/Vマガジンの分厚い広告にわくわくしながら、けんちゃんと同クラスのはらっち(現、ict4e / ict4r 原さん)に部品選定を教わる。 CPUはPentium 90MHz、メモリは奮発して16MB、グラボはCanopusがコスパ良さそう、音源はスタンダードにSoundBluster、やっぱりやってみたいモデムは高速28.8kbps対応のモノ! あとは、ケースと電源を選び、モニターは17インチ、レポート用にプリンタもいるし・・・と、総額40万円。すんなり買ってくれた親には感謝しかない。

6. プログラミングで人助け!
光磁気ディスク(MO)で溜めていく、日々の地震関係データを周波数解析するために、FFTアルゴリズムと、グラフ化するプログラムを、当時発売したてVisual C++を使ってグラフ化、地震結果データとの関連を調べて、なんとなく予兆っぽい箇所を見つけ論文用の素材として提供、先生に感謝された。 プログラミングで人の役に立てる!中学生の頃、ドラクエに馴染めず、ゲームプログラマーになる道を諦めつつもプログラミングは楽しいから続けたいと模索していた中、ツールプログラミングという発見は大きかった。 16bitのOSで、大きなデータを扱うのは面倒だった一方、32bitOS Windows NTでは、自然なプログラミングで大きなメモリが扱えて便利だった。

7. パソ通信三昧
寄せ集めて組み立てたパソコンにありがちな、ハードウェア間の相性問題。なかなかモデムが認識せず、BIOSの設定やら、config.sysやら何やらアレコレいじってなんとか開通。3分10円で市内のホストコンピューターに接続して広がるパソコン通信という、ローカルなネット世界! アニメーションツールや、ミニゲームなど、ちょっとしたWindowsアプリをアップロードすると、友達や、知らない誰かが使ってくれて、感想を即座にくれる環境に大いにハマる。 3分10円なので、いろいろな話題の新着書き込みをダウンロードするのに10円、コメントや投稿をまとめたスクリプトファイルを作って、アップロードするのにもう10円。1日20円のパソ通環境を実現するために、秀丸さん作のパソコン通信用ソフト「秀Term」用のプログラムを書いた。 今でも定番エディタ「秀丸」と同じ作者で大いに活用させてもらったアプリの作者が、なんと同じ福井高専先輩であったことをヘルプを読んで知り、びっくり! 結局、パソ通上のチャットにはまったことで、1日20円ルールは崩れ、長時間回線をつなぐことによる高額請求で怒られた。

8. アルバイト
なまずの同じく2つ上の先輩、みねちゃん(現、ZOZO 大蔵さん)に誘われ、福井市内のインターネット関係設備などを販売する会社へ訪問。 何ができるか問われプログラミングできます!と言ったところ、ある日仕事を頼まれ、1夜で3万円になった。 プログラミングが仕事になると気がついた瞬間だった。 時代を先取りしていたネットカフェの人にJavaを教えてもらい、キレイなクラス構造でオブジェクト思考を学び、Javaのクラス構造をC++で再現して、3Dゲーム開発プロジェクトをなまずメンバーで進めたり、作ったアプリを福井ソフトウェアコンペティションに出して図書券をもらったりした。


「Atlantis」開発コードネーム Mappila
福井高専3年生時、アルバイト先でなまずの先輩、みねちゃん達と開発していた地図システム

9. まとめ
学年、学科が違う先輩からの名アドバイスに救われた!(アルゴリズム、組み立て、アルバイト)
その時々の興味に合わせて、実際作りながらやったことが、結果、学習だった。
故に、プログラミング系の部活で大事な三点。
- メンバーがやりたいことを心置きなく表明できること(気の合う仲間、良い先輩とかわいい後輩)
- メンバー同士でアドバイスし合いながら進められる環境(活動場所)
- その実現につながる高専外のチャンスの提供(社会との関わり)

書き出してみると、出来事や作ったものを思い出せるものでした。
当時のデータも交えて、また改めてふりかえって見ると、更なる発見があるかもしれません。

IT系部活現役な人も、OB/OGな人も、どうぞこの機会に野望や、エピソード、短編長編問わず、ご共有ください!
高専IT系部活 #kosenit Advent Calendar 2018

小学校プログラミング授業、低学年から高学年まで全部IchigoJam!? / 東京都小金井市前原小学校の授業参観と講演

2018/11/30
#IchigoJam #KidsIT 

前原小学校にて授業参観、教室に自然と溶け込み活躍していたIchigoJamに感動。
小学校プログラミング授業の通奏低音 ー 全部IchigoJam !!!! | Peatix

コの字型になった配置がおもしろい教室レイアウト。
小学生用の小さめ机にもフィットしていた、IchigoJamスクールセット。
自分の授業として取り込み、楽しそうにプログラミングを伝える先生と、楽しそうな子供たち。
5年生はIchigoJam BASIC、もう6回目くらいとのことで、タイピング速度もはやいはやい。
自分なりの応用をやって、称賛をあびるコ、隣同士で助け合う様子、なんでIchigoJamって言うのと質問してくれるコ、みんなイキイキしているのが印象的。


4年生はカムロボプログラミング!
テキストプログラミングでロボットを制御。センサーとモーター、実社会ならではのゆらぎとの戦いもよい経験! ロジックの組み立ては、ロボットの方が簡単。カトラリーカードで基本を学んでいるので、取り組みがとってもスムーズ。


2年生はタブレットアプリ版カトラリーカード「カトラリーアップス」を使って乗れる自動運転カーRadishに挑戦!
体育館で走り回りながら、ときに真剣に協力し合ってプログラミングする姿を見ていると、大人でもやってみたくなる! 自分のプログラムで、自分が乗れちゃう体験は、格別。プログラミング自体は、カムロボと全く同じプログラムなので、カムロボにさしこむIchigoDakeをRadishに差し込めばOK!


「前原のプログラミング」
数多くのプログラミング教材を実授業で使いまくった前原小、松田さんによる分類、IchigoJamで低学年から高学年までカバー! 1年に70時間ある総合的な学習の時間の半分、35時間をプログラミングに当てているとのこと!

裁量の時間が多い、1年生2年生のときに、キーボードで遊ぶ時間をつくっておけると、その後の取り組みが更にスムーズになっていきそう。 時に便利な音声入力ですが、大学入試会場では使えません。


「IchigoJamの魅力 〜プログラミングを通じて伝えたい、学ぶ楽しさ〜」(PDFオープンデータ)
IchigoJam生みの親として、開発の思いをご紹介!たくさんのステキな出会いをいただきました。

こちらライブコーディングした、かわくだりゲーム+BGM

10 CLS:X=15 15 CLT 17 PLAY"$CDE2CDE2 GEDCDED2 R" 20 LOCATE X,5:?"O" 30 LOCATE RND(32),23:?"***" 35 WAIT 5-TICK()/180 36 X=X-BTN(LEFT)+BTN(RIGHT) 40 IF SCR(X,5)=0 GOTO20 50 ?TICK() 60 PLAY"T300DRDRD2


前原小が描く新しい「学び」のPerspective、次回の学校公開は、2019/2/23(土)

第4回 こどもプログラミングサミット 2018 in 福井
学びエボリューション、前原小校長、松田さんもご来福!
いよいよ近づく2020小学校プログラミングの必修化、楽しみですねっ

links
- 前原小学校 プログラミング公開授業 – 合同会社ヴォール 鳥取のITシステム開発&ITサポート
- 音楽室にはグランドピアノ、各児童にはIchigoJam、前原小が行き着いたプログラミング授業は楽しさ満載! – about yrm
- プログラミング授業を公開 東京・前原小、車を操作 | 教育新聞 電子版

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像