夏休みの自由研究作品(プログラミング)が戻ってきました

夏休みの宿題の一つ、一研究を提出してから、ずっと学校のほうにありましたが、先日戻ってきました。本当ならもっと早く返ってくるのですが、校内展示で金賞をいただいたあと、郡のほうへは出していただけなかったのですが、11月の文化活動発表会に展示していただけるということで今まで学校にあったのでした。

今年はCodeFriendsでの成果をまとめたものを一研究として提出しました。ソースコードのコピーも印刷して添付したので、かなりのボリュームとなり、それなりのまとめとなりました。

一研究は、ある程度の大きさやボリュームつまり見た目のインパクトというのも大きな要素なので、その点はありがたかったです。

親が手伝ってもよいことは暗黙の了解で、(手伝わなければならないということでは当然なく)、むしろ手伝った力作というのが推奨されているという実態を、私は何年か前に知ったのですが(こちら)、そのすごい世界を知って、私は深入りしないと心に決めた^^;ので、賞狙いには行っていません。

夏休みの取り組みとして無理のない範囲で、というのは、他の宿題や勉強も大変なので・・息子は真面目で不器用な努力型なので、勉強に時間がかかるのです。だから、今までCodeFriendsでやったことをまとめるならば、私も手伝えるし、無理なくできるだろうと思いました。

もう一つ、今回これをテーマに選んだ大きな理由があります。それは、息子が、自分のやっていることを、クラスや学校のみんなに知ってもらいたいということからです。

息子は学校の部活は入っていません。男子が入っているのは運動部しかないので、やりたい(できそうな)ものがありませんでした。その代わりに、プログラミングをやりますと学校には言ってあります。本人も、部活をやっていない分、勉強やプログラミングをできるだけ頑張ると言っています。マイペースですががんばっています。

しかし、他の部活に入っていない保護者の方からもちらほら聞こえてくるのは、肩身が狭いということです。みなさんそれぞれ部活でなくても地域のクラブを頑張っていますが、姿が見えないので仕方がないのかもしれません。そもそも、必ず部活か何かをやらなければならないというのは、どうなんだろうとも思うのですが‥。

息子も、友達から「プログラミングって何をやっているの?」は当然でいいとして、「プログラミングなんて(部活に比べて)楽でいいよね」と言われたと少し憤慨&しょんぼりした様子で話してくれたこともありました。

私は思わず、「・・確かに、楽しいけど、楽(苦労がない)ではないよね」と言いましたら、「うん、そうだ」と妙に納得していました^^;

そんなこともあって、プログラミングでどんなことをやってきたのか、少しでもみんなにわかってもらいたいという息子の想いがあって、このテーマになりました。

そして、校内の展示会、クラスで作品の発表会があった後、全校生徒の作品を集めて展示し、お互いに鑑賞し合うそうですが、その時に、「すばらしいなあ」と思う作品3作品に感想のカードを渡すことになっているそうです。その結果・・

   

全校の生徒さんからこんなにもたくさんのカードをいただくことができました。ほぼすべてのカードに「すごい」という言葉があります。そして、「やってみたい」「これからも頑張って」などと書かれていました。

結果、校内「金賞」をいただくことができ、息子にも達成感と充実感がありました。(よかったね!)

校内で金賞をいただければ、たいてい郡の方にも出品していただけるのですが、今回は・・なんと、あれは「理科」(科学作品展)と「社会」(社会科課題追求学習作品展)だけなのだそうです・・。

賞はどちらでもいいのですが、多くの人に見ていただけると言う点では、そちらのほうにも出していただきたかったなあというのが正直なところですが、プログラミングはなんと「技術」科なのだそうです。うーん、技術?私は完全に数学だと思うのですが・・(私が勝手に数学が好きだからですが)

それから、この一課題で、私、親の勝手な夢も一つ実現いたしました。

小学校では校内展示は親も見に行くことができ、私は一度見に行ったことがあるのですが(それは郡の展示とはまた趣が違って、微笑ましい、よいものです)、その中で、印象に残った作品がありました。

小学生の研究でありながら、その道の専門の方に講評を書いてもらっていたのです。あまり遠方の方では無理ですから、わりと近くにその道の研究者がいらっしゃって、私も知っている方でした。

こう言う風にまとめると、いいものだなあ、いつかこんなふうに講評をもらってみたい!と思っていたのです。

そして、今回、いつも教えていただいている尾崎先生に、立派な講評を書いていただき、夢がかなったのでした。講評の中で、”成果物”と呼んでいただき(このように呼ぶことを初めて知りました)、なんだかその道のプロに認められたような気がして嬉しかったです。ありがとうございました。先生の講評

・研究の内容は、ゲーム一覧のところからそれぞれリンクして見られるようになっています。

・こちらにすべてアップしました。「プログラミングでオリジナルゲームをつくろう(自由研究)」

私の知らない自由研究の世界

言わずと知れた夏休みの自由研究。私の地域では夏休みに一つの課題に取り組みましょうということで、「一研究」と呼ぶことが多いです。

子供の頃、これがすごく苦手でした。何をやっていいかわからないからです。「私がやったところでもうそれ他の人が発見してて皆知ってるじゃん」と思ってしまい、今思うと、何だっていい(実際本当に何だってよくて、自分でやってみたり調べたりすることに価値がある)なのですが、それがわかりませんでした・・。

子供が小学生になって、ついにこの問題に差し掛かることになりました。私のモットーは、「自分が親からされたくなかったことはしない、して欲しかったことはしてあげよう」です。これが実に難しく、時に私の内なるインナーチャイルドが泣いたり笑ったりする作業なのですが、とにかく、これをモットーに、親に放置されていた私は、何でもなるべく子どもと一緒に取り組むようにしてきました。

そして一研究です。小学校一年。息子と話し合って、「アリの研究」に決めました。ペットボトルか水槽だったかな、に砂を入れて、アリの巣のできていくのを観察しようというものでした。

結果・・・無理でした。大失敗です。アリはロクに巣なんか作らないし、だいたい、小学一年生、しかも字を書くのが苦手という息子に、(この頃の息子は運筆が苦手で、字を書くという作業に困難がありました)観察したものを文章でまとめるということが、まずもって無理だったのです・・。

結果、8月の31日夜8時半過ぎ(もう寝る時間)に、スケッチブックに、あたかもアリの巣ができていくような様子を、2、3ページに渡って書き、最後、まとめとして「アリの巣のようすがわかった」と汚い字で殴り書きをして終わるという悲惨な結果に終わりました・・。今でも思い出すと大爆笑です。

翌年はその反省から工作に移り、空気砲でボールを出し、それをバットで打つという、バッティングマシーンを作ることにしましたが、これも工作があまり得意ではない息子には、向いていませんでした。

その次の年は、・・何かまた工作をしたのだと思いますが、どうしても思い出せません。多分これも暗黒史として心の中で封印されてしまったのでしょう。

そして、翌年4年生のとき、ついに「これだ!」というものに出逢います。植物採集です。自由研究の王道ではないでしょうか。その辺の草(雑草)を取ってきて、新聞紙で押し花にし、ラベルを貼ってまとめるだけ!なんと簡単!これなら息子にもできる!・・と思ったら、意外にも困難が待ち受けていました。

雑草って、似たものが多くて、特定がすごく難しいのです。それでも、植物が好きで毎年庭のコスモスを大事に育てていたような息子ですし、本や図鑑も大好きな息子なので割と喜んで(まあ子どもって飽きっぽいのでまたある程度は私がやりましたが)本で調べたりして楽しんで取り組めました。

そして、植物採集のいいことには、現物のコレクションなので、やはり見栄えがいいのです。20種類も集めれば、たいそう立派なものに見えます。これで、初めて校内での入賞をいただきました。そういうものには縁がないと思っていたのでびっくりです。やっぱり現物コレクションのパワーってすごい。

翌年も植物採集です。去年のノウハウがあるので、さらに採集の範囲を広げ、種類も増やし、分類を詳しくしました。すると・・なんと前年に引き続き、校内入賞をいただき、さらに上位の郡の科学作品展に採集の部門というのがあるのですね、そこに出品していただけるということになりました。これも全く期待していなかったことでした。

すると展示の日に電話がかかってきました。展示されているというのに、見に行くこともせず、その日は子供達と名古屋球場に2軍戦を見に行っていたのです。球場にいたとき電話がかかってきたのでよく覚えています。担任の先生からでした。「郡のほうでは、惜しくも入賞できませんでした。もしよかったら、郡のほうの展示を見に来てください。他の人の作品が参考になりますよ。(どのくらいやれば郡で入選できるかわかるので、それを見て参考にして来年は入選できるように頑張ってくださいというニュアンスだったと思います)」というお話でした。

そうですかーわかりましたーと返事しながら、行くこともできず、その年は終わりました。

翌年もやっぱり植物採集。これは、毎年やっても、集まる草や出来栄えは違うので、大丈夫なのです。しかも、同じことを研究してだんだんと発展させていっていることが、また評価につながるということを知りました。小学校最後の年なので、採集した場所の生えている箇所のマップや生えやすい場所との関連、多い草からのランキングを作ったりして工夫しました。

すると、とうとう郡での”入選”をいただきました。去年、郡の展示は見に行ってないので、どのくらいやればというのを考えた訳ではなかったのですが、やはり続けてやって深めていったのがよかったのだと思います。

入選をいただいたので、郡の展示のほうを初めて見にいきました。そこで、私は本当にびっくりしてしまったのです・・

展示会場に入った瞬間、ワッと一瞬で悟りました。それは、私の知らない世界でした。一研究に対する「親子」の熱い情熱!!ここまで夏休みの一研究に情熱を傾ける「親子」がこんなにいるんだ・・

そこにある作品の一つ一つからは、あたかも「入賞したい!金賞が欲しい!」という声が聞こえてくるかのようでした。

だって、本当にすごいんだもん。はっきり言って、「こんなもん子どもだけでできるか!」とツッコミたくなるようなものばかりでした。それは、どれも「親子の力作」なのです。いや、はっきり言って、小学生については、上位入賞できるかどうかは、親がどれだけ熱を入れて手伝ったかだと思いました。だから、そこに、私は子どもたちの素晴らしい努力と同時に、我が子の一研究にも一生懸命協力する親の熱を感じて、圧倒されたのです。

いや、私は決して親が手伝うことを否定するのではありません。むしろ、それには大いに賛同します。何でも親子でやったほうが教育効果は高いのです。

それでも、その作品群の素晴らしさに、・・金賞、銀賞、入選とあるのですが、どれもここまでやっても金賞はとれないのね・・と思う作品ばかりで、入選するのも大変なんだなと、なんだかうちの子がこれだけのもので入選をいただいてしまったのが申し訳ないようにさえ思えてきてしまったのでした・・。

私は親としてここまではできないわぁ・・と反省するのと同時に、これ本気で金賞とか狙っていくのは本当に大変な世界だわと思い知らされ、こっそり心の中で(一研究に深入りするのはやめよう・・)と誓ったのでした。(でも翌年中学でも植物採集をして、中学の植物の分類を取り入れたら、なんと郡で銀賞をいただいてしまったのでした・・。で、今年は・・「夏休みの自由研究作品(プログラミング)が返ってきました」

(自由研究・・暗黒&栄光の歴史)
小学校1年生・・アリの観察→大失敗、殴り書きにて終わる
   2年生・・バッティングマシーン→失敗、工作は苦手だった
   3年生・・記憶にすらない
   4年生・・植物採集と出逢う、結構面白い→☆校内入賞!
   5年生・・味をしめて植物採集、種類も増やす→☆校内入賞!→さらに郡の科学作品展に出品!(入賞はならず)
   6年生・・やっぱり植物採集さらに研究を深める→☆校内入賞!→郡の科学作品展に出品!☆入選!
中学校1年生・・中学でも植物採集、中学の植物の分類を取り入れる→☆校内銀賞!→郡の科学作品展に出品!☆銀賞入選!
   2年生・・いよいよプログラミング!頑張った!→☆校内金賞→技術科なのでそれ以上の出品はなし!でもみんなからたくさんの感想カードをいただくことができて大成功!

 

(一研究)タッチしてちょんまげ


完成したソースコード

// Main
console.log("Hello EnchantJS!!");
var assets = [
    "images/e_tanuki.png",
    "images/title.png",// CodeFriendsタイトル
    "sounds/hit.mp3",
    "sounds/jump.mp3",
    "images/bk_body.png",
    "images/bk_mage.png",
    "images/cf307/apple.png",
    "images/cf307/applekorokoro.png",
    "images/cf307/banana.png",
    "images/cf307/bananakuru.png",
    "images/cf307/sakuranbo.png",
    "images/cf307/sakuranbokuru.png", 
    "images/cf307/tatti.png",
    "images/cf307/honoo.png",
    "images/cf307/tono1.png",
    "sounds/boost.mp3" 
];
function gameStart(){// ゲーム画面
    scene = gameManager.createGameScene();
    core.replaceScene(scene); core.resume();
    //==========
    // ここから
    //==========
    scene.backgroundColor = “green";
    //たぬき
    var tanuki = new ExSprite(32, 32);
    tanuki.image = core.assets["images/e_tanuki.png"];
    scene.addChild(tanuki);
    tanuki.x = 0;
    tanuki.y = 0;
  
    //ほのお
    var honoo = new ExSprite(45,60);
    honoo.image = core.assets[“images/cf307/honoo.png"];
    scene.addChild(honoo);
    honoo.x = 145;
    honoo.y = 190;
    var tono = new ExSprite(190,140);
    tono.image = core.assets["images/bk_body.png"];
    scene.addChild(tono);
    tono.x = 71;
    tono.y = 190;
    var mage = new ExSprite(45,60);
    mage.image = core.assets["images/bk_mage.png"];
    scene.addChild(mage);    
    mage.x = 145;
    mage.y = 130;
    var applekorokoro = new ExSprite(32,32);
    applekorokoro.image = core.assets[“images/cf307/applekorokoro.png"];
    scene.addChild(applekorokoro);    
    applekorokoro.x = 152;
    applekorokoro.y = 103;
   
    var bananakuru = new ExSprite(32,32);
    bananakuru.image = core.assets["images/cf307/bananakuru.png"];
    scene.addChild(bananakuru);    
    bananakuru.x = 152;
    bananakuru.y = 71;
    var sakuranbokuru = new ExSprite(32,32);
    sakuranbokuru.image = core.assets["images/cf307/sakuranbokuru.png"];
    scene.addChild(sakuranbokuru);   
    sakuranbokuru.x = 152;
    sakuranbokuru.y = 39;   
    var tatti = new ExSprite(32, 32);
    tatti.image = core.assets["images/cf307/tatti.png"];
    scene.addChild(tatti);
    tatti.x = 175;
    tatti.y = 150; 
    //まげをタッチすると回転しながら動くように
    mage.addEventListener(Event.TOUCH_START, function(){
        mage.tl.moveBy(0,-100,30);
        honoo.tl.moveBy(0,-100,30);     
        tono.image = core.assets["images/cf307/tono1.png"];
        var sound = core.assets["sounds/boost.mp3"].clone();
        sound.play(); 
        applekorokoro.tl.moveBy(0,200,30);
        //applekorokoro.tl.then(function(){
        applekorokoro.image = core.assets[“images/cf307/applekorokoro.png"]; 
        applekorokoro.frame = [];
        applekorokoro.frame = [0, 1, 2, 3,];
        bananakuru.tl.moveBy(100,232,30); 
        bananakuru.image = core.assets["images/cf307/bananakuru.png"]; 
        bananakuru.frame = [];
        bananakuru.frame = [0, 1, 2, 3,];
        sakuranbokuru.tl.moveBy(-100,264,30); 
        sakuranbokuru.image = core.assets["images/cf307/sakuranbokuru.png"]; 
        sakuranbokuru.frame = [];
        sakuranbokuru.frame = [0, 1, 2, 3,];  
        //元の位置に戻って、回転を止めるようにしたい
        mage.tl.delay(16);
        mage.tl.moveTo(145, 130, 0);
        honoo.tl.delay(16);
        honoo.tl.moveTo(145, 190, 0);
        tono.tl.delay(46);
        tono.tl.then(function(){
            tono.image = core.assets[“images/bk_body.png"];
        });
        applekorokoro.tl.delay(16);
        applekorokoro.tl.moveTo(152, 103, 0);
        applekorokoro.tl.then(function(){
            applekorokoro.image = core.assets["images/cf307/apple.png"]; 
        }); 
        bananakuru.tl.delay(16);
        bananakuru.tl.moveTo(152, 71, 0);
        bananakuru.tl.then(function(){
            bananakuru.image = core.assets[“images/cf307/banana.png"];
        });   
        sakuranbokuru.tl.delay(16);
        sakuranbokuru.tl.moveTo(152, 39, 0);
        sakuranbokuru.tl.then(function(){
            sakuranbokuru.image = core.assets[ “images/cf307
    sakuranbo.png"];
        });
    }); 

◉ 工夫したところ

・タッチしたら殿の画像を変えて驚くような顔にした。

・果物を回転するようにした。

・一回やったら終わりではなく、落ちてしばらくしたら元の位置に戻るようにして、何度でも繰り返せるようにした。

◉ 難しかったところ

・果物の転がる軌道を3方向にしたので、距離が異なるところを調整したところ。

・果物の位置を戻した後に、画像も制止画像に戻すのが難しかった。 (then(function)を使った)

 

 

ゲーム一覧

これまでの作品の記録です。

習った範囲で出来ることだけを使って作っているので、出来ることが徐々に増えていく様子がわかります。

・一部(もしかすると大部分)愉快な音がしますので、音量に注意してください。

・自由研究とあるのは、夏休みの一研究で取り上げたのでその資料を添付してあります。

 

☆画像、音素材については以下の方々からお借りしています

©️おざきしめじ ©効果音ラボ (C)PANICPUMPKIN

無料効果音で遊ぼう! フリー音楽素材/魔王魂 DOTSDESIGN

 

1.タッチしてちょんまげ  2.もぐらへびいか   3.すとっぷうぉっち  4.花火
解説自由研究  自由研究  自由研究  解説のページ
       
 5.うちあげ放題!! 7.暴走クワガタつかまえろ 6.隕石  8.おいも=3(音注意)^^
    
 解説自由研究  自由研究 解説自由研究  解説のページ
       
9.ぺらぺら小僧がめおべ 10.おいもでがめおべら 11.ゲットだゼニ! 12.進めももちゃん
                       
 解説のページ    自由研究  
       
13.満腹ももちゃんeasy 14.超∞満腹Hard 15.ぬへ移動  16.なでてニャ♪ฅ(^ω^ฅ)
 解説のページ  解説のページ  ソースコード 解説自由研究
       
 17.🎹 ぴあの🎹シンプル  18.🎹ぴあのdeキャラ🎹 19.たこちゃん‥( ゚д゚)ハッ!   20.たこちゃん♪真珠天国
 解説のページ 解説のページ     
       
21.🎹ピアノdeぽ~ん!🎹  22.いきなりボス 23.満腹ももちゃんDeluxe  24.ド・レ・か当ててミ・ソ~♪
解説のページ  自由研究  解説のページ  解説自由研究
       
 25.つかまえられるかな?  26.恐怖ももちゃんサバイバル  27.蘇ったcoinエアギタぬきv  28.ブロック崩し激重(空想芸~
 自由研究  解説のページ  解説・自由研究  解説
       
29.激重の極み(空想芸~ 30.激重の極みeasy? 改  31.ニャイコロ  32.ぐりぐりニャイコロ
 解説のページ  解説のページ  解説のページ  解説のページ
       
33.speed=15 touchmove 34.やっぱりももちゃん finish 35.文房軍制作中ver.2.2 36.最短ももちゃん
 解説自由研究  解説自由研究  解説自由研究  解説自由研究
       
37.はしれバネ山さん&??  38.ももちゃんで(^-^) テンコモリ  39.不屈のカニ  40.Escape with くさや
 解説自由研究  解説自由研究  解説自由研究  解説自由研究
       
41.打合い100いけたら神 42.教室からの脱出 43.へびたま 44.武器がスキ(´ε`
 解説のページ  解説自由研究 解説のページ レポート
       
45.ブッタ様大噴火 46.おりゃ〜測定器  47.おならして帰る   48.AIマンドラゴラ
 解説のページ 解説のページ 解説のページ 解説のページ
       
 49.殿 in the Box2d 50.ももちゃんどこだ 51 .豚さんスナイパー 52.無限ジョッキ! 
    解説のページ   
       
53.しめじ先生の大冒険 54.しめじ先生の大冒険  55.swap視覚化 56.80本の棒のシャッフル
 
解説のページ1 解説のページ2   解説のページ 解説のページ
       
57.おさるでポイポイ 58. スロット 59. スロット(2) 60.アナログ時計
解説のページ 解説のページ 解説のページ 解説のページ