タグ

ブックマーク / yaneurao.hatenadiary.com (6)

  • 「捨て駒」がなんだかわかってない奴、多杉 - やねうらおブログ(移転しました)

    今日は『将棋世界』の取材があるのだが、将棋のこと考えていたら寝れないので将棋について日頃思っていることをぶちまけてみる。 もう何度目にしたかわからないのだが、小説やドラマでよく「捨て駒のように俺を粗末に扱いやがって」みたいな表現が出てくるのだが、これが将棋指しから見ると極めておかしい、誤った表現である。将棋について理解のない人にとって「捨て駒」とはそういう認識なのだろうが…。今回はこのことについて詳しく説明する。 まず、将棋は捕獲した駒を手駒に出来る。これはチェスとは違った特徴である。チェスは手駒という概念がないので、取った駒はただ盤上から消えていく。将棋は違う。手駒になる。銀は4枚しかなく、初期盤面では先後2枚ずつ割り振られているが、相手から1枚取るとこちらは盤上に2枚、手駒で1枚と併せて3枚になる。相手は盤上に1枚だけであるから、3対1の戦力になる。 銀の価値が300点だとしたら、相手

    「捨て駒」がなんだかわかってない奴、多杉 - やねうらおブログ(移転しました)
  • CodeIQで結城先生が出題されたCrossingが神がかっていた件 - やねうらおブログ(移転しました)

    CodeIQで挑戦者数が400人超えという異例の事態になったCrossingとはどんな問題だったのか。twitterでも恐ろしい勢いで拡散され、最終日に100人を超えるチャレンジがあった、この問題。一体どこにそんな魅力があったのかについて考えてみる。 まず、このように注目されるためには満たすべき条件が二つある。 繁盛する飲店を考えてもわかるように、まず美味しくなければならない。CodeIQで言うと、問題として良問でなければならない。解答後の達成感がなくてはならない。 次に、飲店なら、その店に入ってみようという気にさせなければならない。入りにくそうなお店でも、料理さえ美味しければその後口コミで広がることもあるだろうが、それだと繁盛するまでに時間がかかりすぎる。だからCodeIQで言うと、まず問題を解いてみようという気にさせなければならない。 このどちらが欠けても駄目である。この問題はこの

    CodeIQで結城先生が出題されたCrossingが神がかっていた件 - やねうらおブログ(移転しました)
  • テキストファイルの標準エンコーディングは? - やねうらおブログ(移転しました)

    テキストファイルのエンコーディングとして何を基とすべきかというのは悩ましい。 日語のみならutf-16で幸せになれるのかと思ったら、JIS2004で追加された907字のうち304文字がサロゲートペアであって、2バイトで表現できない。 どうせ16bitで表現しきれないのなら、utf-32は保存領域がもったいない感があるので仕方ないのでutf-8を選択する。 utf-8だと相手に解釈してもらうためには、BOMをつけるほうが好ましい。 そこで、秀丸で標準保存形式としてutf-8(BOMつき)を設定しておく。 秀丸の拡張子関連づけで、".txt"を秀丸と関連づけておく。 よし、これでテキストファイルを新規作成して、秀丸で開くと…。 utf-8(BOMなし)と解釈される。一体どうなっているのか。 Windowsではエクスプローラーからファイルを新規作成するときにテンプレートを設定しておくことが出

    テキストファイルの標準エンコーディングは? - やねうらおブログ(移転しました)
  • クロージャーだと苦労するんじゃ?(ダジャレ) - やねうらおブログ(移転しました)

    closureで継続(continuation)を実現する技法ってあるじゃないですか。 例えば次の記事は私が5年以上前に書いてますね。 C#2.0時代のゲームプログラミング(49) 〜 delegateを用いたcontinuation http://d.hatena.ne.jp/yaneurao/20070207 上の技法は私は10年ぐらい前にclosureを使い出したころに自力で発見しましたが、まあ、いまや常識ですよね。それで最近、それに似た話題があったので取り上げてみます。 ここで再度認識して欲しいのは、node.js の素晴らしさは「クライアント側で皆が使っているJavaScriptでプログラムが書ける」という部分などにあるのではない、という点だ。node.js がこれほど多くの支持者を得ているのは「来記述が煩雑になりやすい非同期処理をJavaScriptの無名関数を利用して書きや

    クロージャーだと苦労するんじゃ?(ダジャレ) - やねうらおブログ(移転しました)
  • 定期的に繰り返し実行する簡単ではないお仕事 - やねうらおブログ(移転しました)

    いやー、この問題は当に難しい。難しすぎて、どうやって解決すればいいかいまだによくわからない。わからないので、ここに書いてみる。 最初、とあるお客さんのために「ひよこの餌やりプログラム(仮)」を作っていたんだ。開始ボタンを押すとひよこの餌が出てくる。たったそれだけのプログラム。 今回は、これを「定期的に実行する機能が欲しい」と言われた。 この要望を実現するのがすこぶる難しかったんだ。 「やねうらおってそんなプログラムすら書けないの?老害なの?」 とか言わないで欲しい。この問題、当に難しいんだよ! ■ 1度目のひよこの全滅 まず、この要望に沿って、私の会社のプログラマが当初、次のようなダイアログをつけたわけだ。 繰り返し実行のところにチェックを入れた場合、ここで指定された時間後にも繰り返し実行する。単位は分で指定する。1日ならば60×24 = 1440を指定する。そうすると、ひよこの餌やり

  • Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男

    Googleが、Webブラウザ上でネイティブバイナリコードを実行する「Native Client」を公開した。 Native Client http://code.google.com/p/nativeclient/ Google Earth,Quakeなどがすでに動いているようだ。 これはすごい!ブラウザ上でX86バイナリを動かす「Native Client」 http://www.moongift.jp/2008/12/native_client/ サンドボックスで安全性確保、オーバーヘッド5% ブラウザでx86バイナリ実行、グーグルが新技術 http://www.atmarkit.co.jp/news/200812/09/nacl.html あと、サンプルのlife.ccにSDL_surfaceと書いてあるのでSDLの描画まわりが既に動いているのだろうから、今後、たくさんのアプリがN

    Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男
  • 1