チート教育
Toshi's weblogのなかで チープ教育 という話題が出ています。個人的な理解では、表現力、リソースなどが乏しい環境で行うプログラミングは 制限があるがゆえにむしろとっつきやすく、非常に教育的であるというものだと思っています。 この意見には大いに賛同します。
さて、私自身チープ教育の恩恵を受けた世代であるのですが、それ以外にもう一方の視点から得られる 教育的な知見について書いてみたいと思います。
2006年12月に tlugの忘年会で、とある人に次のような話を聞きました。
「僕の最初のBinary hackは、父親が持っていたApple IIの脱衣ポーカーを簡単に勝てるようにした ことだよ」
これはいわゆる「チート」という行為です。チートとは、ゲームを改造し普段できないようなことを 可能にして、クリアを簡単にさせるための手法を指します。
昔のゲームは環境が制限されていたため、解析もそれほど難しいことではありませんでした。 したがって、割とそれなりの人数がチート行為を行っていたはずです。私自身も例外ではなく、 たとえばX68000版ファイナルファイトのADPCMアーカイブファイル構造を解析して、 効果音を入れ替えるといったことを行った経験があります。敵がダッシュしてくる効果音を タラちゃんの走行音にするなど、それだけでもかなり面白い改造になりました (それ以外にも公にかけないようなチートをいろいろとしましたが、ここでは触れません)。
このようなチート行為は、バイナリアンを輩出するための良い教材となっているのではないかと 考えています。公にしない限りは合法(たとえ契約上リバースエンジニアリングが禁止 されていても、著作権法上は「研究のためのリバースエンジニアリング」であれば許されている ことを根拠としています。もちろん異論もあるでしょうが)と自分は考えているので、 大いに解析、改良を行い、そしてそれによって得られた知識はきっと役に立つものとなると 私は考えています。
このような行為に「チート教育」という名前をつけてみる提案をしてみます。
利点
チートという明確な目的が あるため、モチベーションを高く保つことができます。
欠点
せっかく作ったチート情報は、可能なら外部へ発信したくなるというのが人情ですが、 それを行うと法律的なリスクが伴うという問題をはらんでいます。
現実の問題として、 DEAD OR ALIVE2裁判 という判例があります。これはプログラムではなくデータの改造でしたが、 「著作者の表現する意図をゆがめる」ということで、著作者人格権の侵害ということで 著作者側の勝訴となっています。
まとめ
チート教育には以下のような特徴があります。
- プログラム、データの解析を通じてバイナリアンの育成に役立つ
- 目的が明確なため高いモチベーションを維持できる
- 直接的なアウトプットを公にすることには法的リスクがある
法律を守った範囲でのチート教育は有意義であると著者は結論付けます。
コメント
関連リンク
