SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

イベントレポート

ライフスタイル/コーディングスタイル、四者四様の“流儀”からなにを学ぶか?
ITpro Challenge!レポート(後編)


  • X ポスト
  • このエントリーをはてなブックマークに追加

表現手法としてのプログラム

 講演ではいくつかのプログラムが実演されたので、金子氏の談話とともに紹介しておきたい。

NekoFlight/Missile

 もとは1998年ころの作品で、3Dグラフィックカードを持ってないユーザーのためにDirect3DのAPIをまったく使わず、3Dレンダリング部分をすべてアセンブラで書いている。ちゃんとフライトシミュレーターとして計算して作っているが、次第にミサイルを見てるのが楽しくてミサイルが飛びまくるミサイルデモプログラムになってしまった(談)。

NekoFight

 2007年に公開した3D格闘ゲームのサンプル。蹴りが強すぎると空を飛ぶこともあるが「見てて面白いですよね」。AB法というアルゴリズムで、簡単なんだけど複雑なことをやっている(談)。

Winnyのリンクシミュレーター

 Winnyは「Proxyを内蔵したピュアP2P」というアイディアをモデル化したプログラムだが、P2Pネットワークは参加者のノードによる巨大な複雑系になるので、動かしてみないと挙動がわからない。といってもわからないままでは動かないに決まっているので、最低限はシミュレーションを組んだ。もっとも当時考えていたモデルは、実際にできあがったWinnyネットワークと比べるとすごい簡略化されていたので、現実には公開して1日目でいきなり破綻した。それをこまめに修正して、しかもユーザーがついて来ないとダメなのだが、比較的協力的なユーザーさんも揃っていたので、変えて、状況を見て、変えて、状況を見て、ダメだったら丸ごと捨ててみて、と繰り返しでできたのがWinnyのプログラム。当時使っていたシミュレーターは押収されて手元にないので、『Winnyの技術』を書くときに作り直したのがこのプログラム。しかし今わかっているWinnyネットワークのモデルで作ろうとすると、複雑すぎて途中でイヤになって止めてしまった(談)。


 最後に、金子さんは「プログラムそのものが私にとっては表現手法」と語り、トライ&エラーを繰り返すこの手法ではひとりで作ってても先に進まないことがあり、とりあえず公開してみれば、ユーザーのフィードバックをもとに変えていくことができるが、プログラムを公開する前にまず弁護士に相談しなければいけないという状況になったので困っている。と笑いを取りつつ、プログラムの開発や公開に制約がかからないよう「裁判はがんばろうと思ってます」という言葉で講演を締めくくった。

 【関連リンク】
ITPro Challenge 2008 で講演しました&資料公開: blog.bulknews.net
NekoFlight/Missile
NekoFight

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
イベントレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3031 2008/09/29 20:48

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング