【告知】夏休みだ!プログラミングでゲームを作ろう!

未経験者向けのプログラミング教室を開催します。
この夏、ゲーム作りを体験してみませんか。

 

こんな方が対象です。

ゲームを作りたいけど何をしたらいいのかわからない・・・
プログラミングっておもしろうそう!
自由研究でプログラミングしてみたい!

 

少人数で楽しく学ぶワークショップです。

(1)8月11日(木)14:00−16:00
(2)8月25日(木)14:00−16:00
(ノートパソコンの貸し出しもあります。台数制限、先着順。)


参加をお待ちしております。
詳細は下記の募集ページをご覧下さい。

f:id:kamiefan:20160717013028j:plain

キッズプログラミングのお手伝いをしてきました。

文京区教育委員会主催のキッズプログラミング講座のお手伝いをしてきました。
(6月11日、18日、25日 文京区教育センター)

f:id:kamiefan:20160704232954j:plain

自分の世界を作る楽しさ

プログラミング未経験の子供たちが、
Unityというゲームエンジンを使い、簡単なゲームを作る講座です。

1人1台、Unityがセットアップされたパソコンが用意されました。

参加者は区内の小学生で、4・5年生が中心でした。
ほとんど初めてキーボードに挑戦する子供たちもいて、
お手本とにらめっこして、必死にキーを叩いていました。

コンパイルエラーを乗り越え、Unityの設定ミスを探し出し、
そして、自分の書いたコードの通りにゲームが動いた瞬間、
不安そうだった子供たちの表情が、
パアッと笑顔に変わるのがとても印象的でした。
これが「自分の世界」(講師の藤森将昭氏の言葉)を作る楽しさなんだな、と改めて思いました。

サポートとはいえ想像以上に難しかった!

僕はサポートとして、子供たちの席をまわり、
質問に答えたり、つまっているところを手助けしたりしました。
同じゲームを作っていても、1人1人の出来上がりが異なります。
ゲームが少しずつ完成していくのを見守るのが楽しかったです。

最初、緊張していた子供たちですが、
徐々に慣れてくると、いろいろな個性を見せてくれます。
見て見て!と嬉しそうに見せてくれる子や、
黙々とゲーム作りに没頭する子(でも、作り込みがすごい!)がいる一方で、
キー入力が面倒くさくなって集中力を失う子もいました。
モチベーションと集中力を切らさないように、
適切なサポートをすることの難しさを感じました。
今回の講座をきっかけに、さらにプログラミングを学びたいと思ってもらえると嬉しいです。

ちなみに、プログラミングやゲームといえば、男の子ばかりのイメージでしたが、
女の子がそこそこ来ていることに驚きました。
でも男の子の方がやや多めでしたけどね。

f:id:kamiefan:20160704232421j:plain

プログラミングがやりたくなったら?

講師の藤森将昭氏のプログラミング教室はこちら。

小学生・中学生のためのプログラミング教室:Unity入門講座 | monopro キッズ・プログラミング道場

興味を持ったら門を叩いてみてはいかがでしょう。
プログラミングは楽しいよ♪

スクレイピングの依頼をお受けしました

WEBサイトをスクレイピングしてほしい、
という依頼をいただきました。

例えばスクレイピングをすると
アマゾンから「子育て」というキーワードが入った本のリストを作成できます。

アマゾンにアクセスして、1件ずつ題名をコピペすると時間がかかります。
そんな時にプログラムで自動化すると作業時間がかなり短縮できます。
というか、コピペでやるには面倒なほど大量のデータがある場合や、
定期的に行う必要がある場合などに有効な手段です。

はじめてスクレイピングの依頼を頂きましたが、
思ったより楽しくて、ワクワクしました。

サンプルコードをQiitaで公開しています。
興味のある方は下記からどうぞ。

qiita.com


ご相談、ご依頼お受けしております。
お問い合わせはこちら

papagram

 

ラズベリーパイ マインクラフト

ラズベリーパイをセットアップしてみました。
その記事は後日書くこととして、
とりあえず5歳の息子にラズベリーパイを使わせてみました。

キッズにプログラミングを教えるなら、
ラズベリーパイいいんじゃないかな。
スクラッチやマインクラフトが最初から入ってるしね。

まずはマウスとキーボードで操作することに慣れるところから。
「おしごとー」と言って、キーを必死に叩いています。

f:id:kamiefan:20160411143238j:plain

マインクラフトに食いつきました。
あっという間に操作に慣れて、
ブロックを積んだり壊したりしています。 

これはイケる!

f:id:kamiefan:20160411143255j:plain

が、今回は夢中になりすぎて、
お父さんにはぜんぜんさわらせてくれませんでした。

pythonでプログラミングして、
ブロックを積むところをみせたかったんだけどなぁ。

1時間以上プレイしたら、
おでこのあたりが痛くなったようなので、
1日30分くらいが目安かなと思いました。
やりすぎには注意です。

ラジオ体操が肩こりに効く。

プログラミングをしていると肩こりで、肩甲骨の周りや腕の痛みに悩まされている方はとても多いのではないかと思います。
ぼくも普段、長時間パソコンを見つめたり、座り作業だったりで、腰や肩の痛みに悩まされていました。
そこで、昨年の末頃から、ラジオ体操を始めてみました。
これがとてもよく効きます!

YouTubeで下記の動画を再生して、一緒に体操するだけです。
腕を回したり、背中を反ったり、プログラミングしているととらない姿勢ばかりです。
1回10分もかからないので、とてもお手軽です。

ぼくは朝夜の2回やることが多いのですが、できれば朝昼夜と1日3回行いたいです。
毎日続けられればもっとよいのですが、最初は無理のない程度でよいと思います。
真剣にやると、終わった後はじんわり汗をかくぐらいの運動になります。

ラジオ体操侮れません。
肩こりなどでお悩みの方は、ラジオ体操おすすめです!

これからプログラミングを始めたい人に伝えたいこと

おおげさなタイトルですみません。

先日、「プログラミング初学者に伝えたいこと」何かない?
と聞かれて、思いついたことを答えたので
少しまとめてみたいと思います。
プログラミングを始めたばかりの
あの頃の自分に向けたメッセージのつもりで書きました。

言語の選択

最初に始める言語の選択は
何がやりたいのかに尽きると思います。

何が作りたいか
という目的意識がはっきりしていれば
必要な言語やフレームワーク
自ずと定まってくると思います。

PHPRuby(RubyonRails)どっちがいいですか
と聞かれることもありますが、
どちらでも目的のものを作れますし
好みの問題だと思います。
ただ、少々わからないことがあるからといって
言語やフレームワーク
コロコロと変えるのはよくないと思います。

わからないことがあれば
詳しい人に質問したり
ネットで検索して焦らず進んでいくのが良いと思います。

プログラミング特有の概念や考え方につまづいている場合、
言語を変えても解決しない場合が多いと思うからです。

また、言語を選択したらできるだけ新しいバージョンを使いましょう。
新しすぎるとネットにもあまり情報がないという状況になってしまいますが
2世代も前のメジャーバージョンを選んでしまう
などということがないように気をつけましょう。

やはり詳しい人に聞くのが良いと思います。

毎日書こう

そして、書いたら誰かに見せよう。

15分でもよいと思います。
毎日コードを書くことが上達への近道です。

そして、書いたコードを、できれば詳しい人に見てもらうことです。
コードレビューは本当に自分の力になります。
ぼくも自分のコードをレビューしてもらえるようになって
一気に成長を感じられるようになりました。

身近に詳しい人がいない場合は
GitHubで公開してみたり
Qiitaに投稿してみたり
ブログを書いてみたり
自分のコードを見てもらえる機会を
できるだけたくさん用意することが大事だと思います。

始めたばかりの頃はほんの2〜3行の短いコードでも
なかなか自信を持って書けないものです。
最初の頃は、短いサンプルコードや関数を読み流さず
1行ずつ何をしているか理解しながら読み進めるのがよいと思います。
車輪の再発明(wikipedia)をしてもよいと思います。
いったん自分なりに関数やクラスを作ってみるのは良い経験だと思います。
出力したい結果を導くまでのロジックを考えて、コードを書く
思い通りに動いた!
というのがプログラミングの醍醐味の一つではないかと思います。
引数をポンポンと渡してとりあえず動いたでは味気ないような気もします。

実行環境の構築につまずく

基本的な命令文や文法を覚えるのは
実は独学でもそう難しいことではないと思います。
(条件分岐、繰り返し、変数、配列など)

しかし、実行環境の構築でつまづいてしまうと
1行もコードを書かずに挫折してしまうということになりかねないので
詳しい人のサポートを得られるのが望ましいと思います。

最初から複雑なプログラミング環境を準備する必要はないと思います。
PHPであれば、まず、MAMPやXAMPPをインストールすれば充分です。
Railsでも、Macであれば、ローカルに環境を構築してしまって大丈夫です。
VirtualBoxを導入するなどして
コードを書くまでのハードルをあげる必要はないと思います。
自分の好みの環境を構築するのは
もっとプログラミングに慣れてからでもよいと思います。

実行環境が予め準備されていて
ブラウザ上ですぐプログラミングが始められるサービスもありますが
1度は環境構築にチャレンジしてみた方が自身の力になると思います。
ググってググって、エラーを解消して
初めてプログラムが動いた感動は後のやる気につながります。

とりあえずめんどくさいことは抜きにして
プログラムが動いたという感動を味わいたい場合は
ブラウザとメモ帳でできるJavaScript
実行環境が予め準備されているExcelVBAがオススメです。

書籍の購入について

発売日の新しいものを買ってください。
ブックオフで500円で10年前のものが安く売られているからといって
そんなものを買ってはいけません。
できるだけ自分の使っているバージョンに対応したものを選んでください。

英語は必要?

どうしても日本語だけで目当ての情報が見つからない
ということはよくあります。
しかし、stackoverflowを、
単語を拾ってなんとなく意味を理解できれば、
まず大丈夫だと思います。

幸いなことにサンプルコードを載せてくれることが多いので
コードを見ながら、英文の意味を推測できます。
まずは英語情報を避けないことが大事だと思います。

寝かしつけ 絵本読み

子供って、「早く寝ろー!」と思うほど、なかなか寝てくれない。。。
寝かしつけをスムーズに、かつ楽しい時間に変えられないものだろうか。

読み聞かせはおやすみのサイン

おふとんの中で絵本を読んでもらう = おやすみのサイン。
こどもの中でこのパターンが習慣化されること。
就寝前に絵本を読み聞かせる最大の効果はこれに尽きると思う。

1日の締めを、お母さん(もしくはお父さん)とくっついて、
大好きな絵本を読んでもらったというプラスの記憶で終えられることが、
ポイントだと思う。

寝る直前まで刺激の強い音楽や映像を受けていると、
脳が興奮状態のままで、なかなか寝付けないと聞いたことがある。
少し暗くした静かな部屋で、お父さんお母さんの声を聴かせてあげると、
穏やかな状態で安心して睡眠に入れるのだそうだ。

毎日、決まった時間に習慣化すると、
”今日は何読んでもらおうかな♪”とウキウキしてくるようだ。

何冊読む?

我が家では、

”就寝準備が全て終わった時間で、何冊選べるかが決まる”

とゲーム感覚で決めている。

f:id:kamiefan:20160420111804j:plain

9時就寝として、

  • 8時30分~35分 → 5冊
  • 8時35分~40分 → 4冊
  • 8時40分~50分 → 3冊
  • 8時50分~9時 → 2冊
  • 9時~9時10分 → 1冊
  • それ以降は0冊

何気なく始めたことだが、これすごい効果がある。
たくさん読んでもらいたいがために、
大急ぎで就寝準備をするようになったし、
自分から「もう寝る♪」と言って、寝室に行ってしまうように!

がんばったご褒美なので、
読みたい絵本を自由に選ばせている。

絵本を読み聞かせるようになってから、
僕自身も絵本を読むのが楽しくなってきた。
図書館で2週間ごとに、タイトルを入れ替えるのだが、
”次は何を借りるかな〜”と密かに楽しみにしている。