These pages are written by only Japanese.

Welcom to My Diary.com
最新の日記タイトル一覧カテゴリ別タイトル一覧トップへ戻る〜

こんばんわ♪ 現在は3月28日(木)18時42分。 今日も残業なのでしょうか?


hns - 日記自動生成システム - Version 2.19.5 (色々 Fixed)

先月 2008年03月 来月
01
02 03 04 05 06 07 08
09 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Namazu for hns による簡易全文検索です。
詳細は 詳細指定/ヘルプをご参照下さい。
検索式:

2008年03月10日(月)

PHP extension のお勉強

これ の続き

参考サイト:

API のイメージ:

$swfdata = file_get_contents('test.swf');
$swf = new SWFEditor();
$swf->load($swfdata);
$swf->dump();
//$swf->save();

準備:

cd /php/php-5.1.6/ext
./ext_skel --extname=swfed
cd swfed/
vi config.m4
phpize
./configure
make

コーディング:

php_swfed.h
PHP_FUNCTION(confirm_swfed_compiled);   /* For testing, remove later. */
static zend_class_entry *swfed_ce;
PHP_METHOD(swfed, load);
PHP_METHOD(swfed, dump);

swfed.c
zend_function_entry swfed_functions[] = {
        PHP_FE(confirm_swfed_compiled,  NULL)           /* For testing,
 remove later. */
        PHP_ME(swfed,  load, NULL, 0)
        PHP_ME(swfed,  dump, NULL, 0)
}
<略>
PHP_MINIT_FUNCTION(swfed)
{
        /* If you have INI entries, uncomment these lines
        ZEND_INIT_MODULE_GLOBALS(swfed, php_swfed_init_globals, NULL);
        REGISTER_INI_ENTRIES();
        */
        zend_class_entry ce;
        INIT_CLASS_ENTRY(ce, "SWFEditor", swfed_functions);
<略>
PHP_METHOD(swfed, load){
        char *data;
        int data_len;
        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,
				"s", &data, &data_len) == FAILURE) {
		return;
	}
	<色々>
}
PHP_METHOD(swfed, dump){
	<色々>
}
さて、以前作った SWFEditor を真似して実装するか。
続く

csv2html

車輪の再発明にも程があるけど、csv 処理の練習で作ってみました。 まぁ… PukiWiki とかに貼り付けれれば、それで済むんだけどね。^^;

2008年03月11日(火)

タンジブル・ビットのセミナー

電大でのセミナーを見て来ました。 色んな「おもちゃ」を紹介していて、楽しく聞けました。

概要 (メモを頼りに書いてるので怪しいですが):

教授の研究戦略は既存の概念と直交した(又は逆を向く)独自な概念を打ち出す事で、 タンジブル・ビットのビジョンはその成果との事。
今の PC はマウスという遠隔操作ツールで指令を与え、 モニタやスピーカーでその結果を受け取る。
小さな(tiny)画面で何でもする(general purpose)のは、 foreground の 限られた attention では足りないという認識にたち、 single application 的なツールで background 的な、 「気配として感じられる情報の提供」を考えているようです。
single application を具体的にいうと、腕時計は自分の腕を見るだけで 時間が分かるが、時間しか分からない。 そういう何かに特化したアプリケーションの事。
身体空間に対する空間拡張としてのメディアという概念で捉え、 より直接的に操作ができ、かつ操作結果を操作対象に直接フィードバックする事で 実感しやすい UI が作る。(という事かな?)
以下に素敵な「おもちゃ」の数々。

I/O Brush:

ブラシで触れた物体のモーションや音をコピーし、 スクリーンに触るとそれを貼り付ける事が出来る。
普通の絵画は固定されたインクだけど、これはモーションや音を残せる生きたインク。 と言いたいらしい。

topobo:

モノを直接触って操作できるという事以外は記憶がないです。 デモの表示がうまくいかなかったみたいで、よく分かりませんでした。^^;

PICO:

基地局の配置シミュレーションのシステムですが、 磁力でコマを動かしつつ 手動で動きを制限(Mechanical Constrain)するとフィードバックがかかるらしく、 二点間の距離を一定以内。 という制限をつけたい場合はわっかで物理的にくくったり、 反応を遅らせる場合は重しをつけたり、 早くする時はボードに潤滑油を塗ったりw
で対応できるようです。

MusicBottle:

蓋を開けると音楽が鳴るというそこらにありそう *1 なオモチャですが、 PC を使えない人が、何かの情報を取り出すツールとして、 使えるといいなって所は共感できます。 魔法のランプ的な発想ですね。

AudioPad:

盤上のコマを動かして音楽の進行を制御できるシステム。
操作方法は以下のデモの途中辺りが分かりやすい… かもしれません。

PingPongPlus:

遊び心が昂じて研究度外視で作ったシステムだそうで、
ピンポンのコートがディスプレイになってて、 玉がはねると波紋が出たり、泳いでる魚の行動に影響したりといった感じ。
ピンポン自体ストイックな競技なので、 見ている人がもっと楽しめればという発想らしい。
音センサーを何箇所がつけて、音の伝わる速さを利用した三点測量で 場所を特定してるとの事。

他にも砂遊びや水遊びをバーチャルで出来るのとか、 離れた人の操作結果を磁力で動きに反映(sync)させる(Actual Workbench)事で、 同じコマを動かそうとした時に触ってる感覚を共有するのとか、 地理情報を表示してといったツールもありましたが、ばっさり省略。
「おもちゃ」は以上。

Virtual Reality について:

物理的に遠く離れた2人に同じ部屋にいるように思わせる為の努力が なされていたが、あれはナンセンス。Trust の問題があって人間に そう錯覚させる事は出来ない。といった感じの話がありました。
これだけはちょっと異議があります。
今のテレビ電話みたいなのに限れば同感ですし、ただ帯域を上げれば いいってもんじゃないとは思う。どんなに走査線が増えて画面が綺麗に なっても、つまらない今の地上波テレビ番組が面白くなる訳じゃない のと同じ。
でも、SF に出てくるような立体テレビ位まで発展して、 更にそれに慣れてくるような状況まで持っていければ、 人によっては(一人でいる時にお化けを怖がるような自分なんて特に) 簡単に信じちゃう気もします。

その他:

教授のプレゼンは面白かったけど、 初めに教授を紹介する人がまともに話せてなかったり *2
隣にマナーが最悪の人がいたり *3
質問が低レベルにも程がある *4 といった感じで後味の悪いセミナーでした。
講師がよくても聴衆がひどいとダメですねぇ…
うーん…

*1: 本を開くと音が鳴る絵本とか見た記憶が。^^;
*2: 話すのが下手ならせめてカンペを見てもいいから、まともな紹介して欲しい…
*3: 前半、台の脇まで移動してデジカメで撮りまくって、後半殆ど寝てたり…
デジカメの撮影音うるさいし… (つか、近くの人か会場の係りの人が注意してよ…

*4: ビジュアルが大事なデモでなんでBGM流してるんですか等々… アリエン…
… というか、僕に質問させろーーっ
MusicBottles の仕組みとか、background な attension とかツッコミ所沢山あるだろw
つまらない質問ばかりされて時間切れで打ち切られちゃいましたよ。(;ω;)


2008年03月12日(水)

Amazon 祭り

なんだか楽しそうです。

また google の順位が下降

namazu の検索結果のリンクがおかしかったので修正して、 IntelliSearch (検索サイト経由できた場合に、トップでなく、 そのキーワードで日記検索した結果のページに飛ばす機能) を有効にしてみました。
さて、吉と出るか凶と出るか。
しかし、google bot に crawl されるログは残ってるのに、 google 検索結果の サマリーが変化しないのは、どういう事なんだろう。

2008年03月13日(木)

Googleの入社試験

むつかしいよう (・ω・)

2008年03月14日(金)

「赤色灯 for 2ちゃんねる」リリース!

2ちゃんねるの祭りに参加すると生活リズムが崩れるので遠慮するけど、
自宅サーバの調子が悪い時に光って教えてくれると嬉しいな。
単純に赤色灯に Ethernet がついてて on/off が外から出来るだけのって 売ってないのかな。 (そういえば、お友達が USB 端子付きの持っていたような気もするけど…)
探しても商品が見つからないよぅ。(;ω;)
続く

DivXの最高財務責任者が明かした「Stage6」閉鎖の本当の理

これ の続き
やはり著作権問題は大変なんですね。
失策の責任逃れの言い訳に使ってるかもしれないけど。

2008年03月15日(土)

日本と欧米の売れるゲームの違い

これ の続き
ちょっと古い記事だけど、
日本人は『かわいい』ものが好きなのかもしれません。
ちゃんと日本人向けにローカライズしないと売れませんよ?
某ゲームに対して言いたかった事がまさしくw
夢世界 はローカライズされてると聞いたので、 もう一度騙されてみようかとも思いましたが、 トップページのキャラを見ると食指が動かないんですよね… (´Д`;)

MK-STYLE パスワード再設定

夢世界用にゲームIDを有効にしないとなので、 MK-STYLE のページにアクセスしたところ、
2008年1月26日(土)の認証機能の修正にともない、
パスワードを再設定していただくことになりました。
こちらのページでパスワードの再設定をお願いいたします。
お詫びメールを読み直したら、なるほど。 認証システム強化とパスワード変えてね。というのが書いてある。
仕方ないので、メールアドレスを入れて再設定用のURLを送ってもらったら なんか、現在のパスワード入力を求められますよ (´Д`;)
今のパスワード分かってるんだったら、なんで再設定しなきゃなんですか。 (いや、理由の予想はつきますが…)
まぁ、いいやと入れてみたら
秘密質問の回答を全角文字で入力してください。
これは 注意文言を注意深く読まずに入力した自分が悪いので仕方ない入れ直すかと、[戻る]ボタンを押したら パスワード入力し直しですが。
この時点で諦め…
夢世界のあのポリゴンをみて、あまり積極的にやりたいとは思ってなくて、 暇つぶし程度に考えていたけどゲーム前に時間が潰れるんじゃもう やる価値ないよね…
そういえばお詫びのメールがきてたけど、 アカウント情報の漏れた 14,362件 に自分が入っているかわからずじまいだったなぁ…
こんな気の利かないサイトが ID 管理してるのって激しく不安なんですが… (・ω・)

[- HNS 警告:このユーザ変数(YOTEI)って、定義されてないモノです。-]

日記の上の方に赤字で表示されていました。
HNS の thema に stripe を使っているので、元は、
[- HNS 警告:このユーザ変数って、定義されてないモノです。-]
ですが、ちょこっといじって変数名を表示させてます。
でもやっぱり謎。何だろうこの警告…

何となく解決:

stripe/thema.ph に以下の行を追加 (japanese/theme.ph からパクり)
$Templates{'YOTEI'}  = "<p>%value</p>";

2008年03月16日(日)

経ヶ岳にチャレンジ

今日は経ヶ岳に登ってきました。 本当は仏果山に3度目の挑戦を考えていたのですが、 下山の予想時刻が6時になってしまったので、 諦めて比較的駅から近い、経ヶ岳にしました。
途中で暗くなってしまって、結局登りきれませんでしたけど。
次はもう少し早く出かけよう。(´Д`;)

地図:

写真:

出発地点
登山口
序盤(1)
建築物
序盤(2)
テーブル
怪しくなる道
中盤
道路に到着
鹿避け
更にその先
暗くなってきたので引き返し
ついでに
下界を眺める

2008年03月17日(月)

本名バレてもへっちゃら?

ひとつ知っておいて欲しいのは「あたまおかしい人」って案外おおいんだよーってこと。
わかるわかる。
mixi も何人か怖くてブラックリスト入れてます。
さすがに直接あった事のない人にリストカットの話されるとね… (・ω・)

PCから操作できる警告灯

これ の続き
ネットワーク越しに操作できる赤色灯が欲しいなって日記に書いたら お友達が幾つか紹介してくれました。 前者は高くて手が出ませんが、後者はちょっと悩みます…
1万位なら即買いなんですけどね。仕事に潤いが欲しいので。(;ω;)

うっかり閉じてしまったウインドウを60秒以内なら復活させる『GoneIn60s』

ちょw こんな事出来るんだw

ちょっと検索:

よく調べてみると、結構古くから知られてそうなツールですね。(´Д`;) あと、実際には終了を60秒遅らせるツールなので、以下のようなデメリットもあるみたい。
[4]:名前:秒刊名無し : 2008年02月17日 01:43

悪く無いけど、ニコニコ動画起動中ではタブ閉じてもしばらく再生してて迷惑だた。
動画プレイヤーの停止ボタンで止めればいいので、慣れだと思いますけど。

実行中タスクを詳細に表示させるフリーソフト『ProcessWal

ダウンロードを試みると、
Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server
through socket '/var/lib/mysql/mysql.sock' (11) in
/home/htdocs/cgi/ccount/cgis_libs/class/DB.class.php on line 91
MySQLの接続に失敗しました
(;ω;)

2008年03月18日(火) BGM:サラリーマンのうた

BGM:サラリーマンのうた

PHP extension のお勉強 (2)

これ の続き

参考サイト:

destructor の実装方法が分からなくて google 様に聞いたら 以下のサイトを教えてくれました。 なるほど。初期化の時にコールバックで設定しておくのね。

実際にトライ:

static void free_swfed_resource(zend_rsrc_list_entry *resource TSRMLS_DC);
PHP_MINIT_FUNCTION(swfed)
{
	<略>
    zend_register_list_destructors_ex(free_swfed_resource, NULL, "SWFEditor", m\
odule_number);
    return SUCCESS;
}

static void free_swfed_resource(zend_rsrc_list_entry *resource TSRMLS_DC)
{
    printf("SWFEditor->destory\n");
}
この文字列は表示されませんでした。(;ω;) 何か知らない法則があるに違いないです…
他の extension のコードを読んで勉強しよっと。(・ε・)

インスタンス変数の更新:

PHP_METHOD(swfed, input){
    char *str;
    int str_len;
    zval *obj = getThis();
    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC,
                              "s", &str, &str_len) == FAILURE) {
        return;
    }
    zend_update_property_stringl(swfeditor_ce, obj,
                                "rawdata", strlen("rawdata"),
                                 str, str_len);
    RETURN_TRUE;
}
こっちは成功。
続く

JavaScript クロージャ

同僚がクロージャがどうとか話してたので、ちょっとググってみた。 うーむ。こんな面白い事が出来るんだ……
無名クラスのファクトリーって感じに特化した機能なのかな。

中国、食品の輸出合格率が99%に

中国では製品の品質と食品の安全に対する追求システムと責任調査システムが確立し、
食品の合格輸出率が99%に達したと発表
それって単に検査がザルなんじゃ…

【産経抄】3月17日 チベット問題

それにしても日ごろ国会の内外で、「人権、ジンケン」と声高に唱えて
いらっしゃる方々の声がチベット問題では小さいのはどうしたことか。
今国会に人権擁護法案の上程を考えておられるセンセイたちは、与野党問わず
「チベット人の人権を守れ」と中国大使館に押しかけても不思議ではないのに、
そういった話は寡聞にして聞かない。
人権団体からも声が聞こえてきませんよね…
今日の朝日新聞の朝刊なんてチベット僧が一方的に暴れているような書き方してるし…

最近のテレビ番組はくだらない?

その結果、小難しい事が大好きな人が見るメディアとしてのネットと、娯楽が大好きな
人が見るテレビという区分けが今よりもより鮮明になっていくのかも知れません。
両立できれば、それに越したことないですよね。 消費者が使い分ければいいだけですし。

2008年03月19日(水) BGM:サラリーマンのうた

BGM:サラリーマンのうた

PHP extension のお勉強 (3)

これ の続き

destructor:

ming extension のコードを読んでいて、先の 参考 URL に正解が書いてある事に気付きました。
見逃してただけです。○rz
PHP_METHOD(swfed, __construct);
PHP_METHOD(swfed, __construct){
    int ret = zend_list_insert(NULL, le_swfed);
}
これが足りなかっただけでした。
あと、PHP のインスタンス変数とは別のクラス内部データを 保持したければ、そのポインタを zend_list_insert の NULL のところに 入れれば良いっぽい。

クラス内部データの保持の仕方 (異常系を端折ってます):

ming extension を真似てみました。
PHP_METHOD(swfed, __construct){
    struct swfdata_t *swfdata = new_swfdata();
    int ret = zend_list_insert(swfdata, le_swfed);
    object_init_ex(getThis(), swfeditor_ce);
    add_property_resource(getThis(), "swfed", ret);
    zend_list_addref(ret); // XXX 何だろう。これ
}

PHP_METHOD(swfed, swfInfo){
    zval **tmp *obj = getThis();
    struct swfdata_t *swfdata;
    int id, type;
    zend_hash_find(Z_OBJPROP_P(obj, "swfed",
                   strlen("swfed") + 1, (void **)&tmp);
    swfdata = zend_list_find(Z_LVAL_PP(tmp), &type);
    // swfdata の中身をダンプ
}

static void free_swfed(zend_rsrc_list_entry *resource TSRMLS_DC) {
    free_swfdata(resource->ptr);
}
zend_hash_find の strlen で +1 しないと動かないのが謎だけど、 とりあえず、これで動きました。

メモ:

あと、ZEND_REGISTER_RESOUCE とか FREE_RESOURCE とかのキーワードが気になるので、今度で調べよ。
続く

ゲーム音楽のしくみ・・・その作り方と鳴らし方

PSG ナツカシス…
小学生の頃にエンベロープ周期とか三角波とかで遊んだ思い出が…

「2001年宇宙の旅」など世界的SF作家 http://www.chunichi.co.jp/s/article/2008031990113906.html

ぅぅぅ。(;ω;)
小説版2001年と2010年は何度も読み直してます…
3001年はかっとびすぎて初めの数ページで挫折しましたけど。f^^;

2月17日の日記 で引用したコメントの通りか。(´Д`;)
半導体「NAND型フラッシュメモリー」の価格下落もあって 踏んだり蹴ったりですね。

コミュニケーションツールとしての限界?――mixi、セカンドラライフ

大迫氏も述べるように、mixiにはいろいろ面白い点があるはずなのに、
ピントのズレた機能拡張をした揚げ句にユーザー離れを起こしているようにも見えるのだ。
要らない機能ばっか増えて、メニューがゴチャってしちゃったよね。(・ω・)
ツールとしての限界というより、戦略/企画面での自爆ではないかと…

これで、10 日分だよ〜。

タイトル一覧
カテゴリ分類
Database
JXTA
Java
XML
awm
bookmark
keyword
memo
news
research
Powered by hns-2.19.5, HyperNikkiSystem Project