THE長文日記

長文とか短文とかのクレームは一切受け付けません

電通ニュースクール

今年も電通の幹部社員教育を手伝うことになった。

去年コテンパンにしたはずなのに、


 「それがさあ、意外に評判がいいんだよ」


と鏡さんは言う。

もともとは売り言葉と買い言葉で始まった、電通マンに「プログラミング」を教えるという人体実験講座だが、だったら今年は思いっきり難しくしてやる、ということでcode.9leapを説明したあと、いきなりゲーム開発ハッカソンに突入することにした。


説明しながら「あ、配列の説明忘れてた」とか「あ、if文の説明忘れてた」とか、まあいろいろなことが起きたけど、まあ配列なんか知らなくてもカンタンなゲームくらいは作れるよね。


その割には、自作クラスの定義の仕方とか、大事なことを説明する。


説明しながらも、「enchant.js、もっと行数減らせるんじゃない」と思うのだが、ここには手を出さないと決めているので見守ることにする。


何気なく配列を使って、「おっと」と思った。コレクションクラスがenchant.jsに実装されればここはもっとスッキリ書けるはずだ。


超初心者にプログラミングを説明するときに最初に彼らがつまづくのは、なんと代入だ。

a=a+1

が理解できない。

等式として見てしまうのだ。

なるほど、だからパスカル

a:=a+1

とするのだよね

プログラムの=はたいていの場合は代入だ。

=が二回続いたら、比較だ。


何気なく配列を使ってしまったので、配列の解説をすると、これが全く伝わらない。

画面にもうスプライトは表示できて、殴ったらクマが泣く、くらいまではできているというのに配列が解らない。


というか「なんのためにそんなややこしいものが必要なのか」ということが理解できない。

そりゃそうだわな。


オブジェクト指向でバンバンキャラクター生成できるんだから、配列みたいな「内臓見えてる」もんの必要性ってなかなかわかんないよね。


昔はグラフィックを表示するだけで配列がなければ即死する、という感じだったけど、配列の必要性について配列を知らない人に説明するってすごい難しいよね。


ある日、欲しくなるんだけどね。それを理解するまではかなりの時間がかかるかもしれない。

上達しないと配列はわからん。


なるほどなと思った。


ついでに言うと、ifを全く使わずにイベント駆動プログラミングを説明できた。

ifの大部分はイベントで隠蔽されてるもんなあ


やっぱり初心者の人たちに教えるといろいろ勉強になる。

今は講義が終わって、ハッカソンタイム。

さあ本当にできるのかな?