なんとなくDHH製のInstikiをインストールしてみた。
% wget http://rubyforge.org/frs/download.php/9296/instiki-0.11.0.tgz
% tar zxf instiki-0.11.0
% cd instiki-0.11.0
% ./instiki -d
でこの画面。
いいなこれー。最近のカップ麺の方がセットアップ大変だぞ。 この壮絶な簡単さは見習いたい。
- 人を動かす 新装版
 - 創元社(1999-10)
 - 創元社
 - (著)デール カーネギー
 - (原著)Dale Carnegie
 - 定価:¥ 1,575
 - 新品価格:¥ 1,575
 - 中古価格:¥ 1,000
 - ASIN:4422100513
 
図書館には何故かなかなか無かったけどやっと発見。 自己啓発本というか、教科書か何かで学生の時に教えておいてくれよ!って感じです。
- アンビエント・ファインダビリティ―ウェブ、検索、そしてコミュニケーションをめぐる旅
 - オライリージャパン(2006-04)
 - オライリージャパン
 - (著)ピーター モービル
 - (原著)Peter Morville
 - (翻訳)浅野 紀予
 - 定価:¥ 1,995
 - 新品価格:¥ 1,995
 - 中古価格:¥ 1,895
 - ASIN:4873112834
 
読んでもよくわからなかったなー。
アンビエント(周囲を取り巻く)・ファインダビリティ(見付かり易さ)。合わせて、何でもかんでも情報として検索できちゃうようになっていく世の中に対するヒント集。
またいっぱいキーワード増やすなよな?。言いたいだけにならないように気を付けないと。
おれとしては最近、組み込みに対する興味があったので、GPSやRFID、無線LANのデバイスや実装が気になった。(=半田付けやアセンブラやC)
誤読。
Mojavi Japanのフォーラムにスパムがすげえ…。 これ、前の前の会社であるワイズノットに置かせてもらってるんだけど、社内からしかsshできねえ…。 XOOPSの管理画面から削除しようとすると何かエラー出るし。困ったなー。
作り途中だけど使ってみたら早速問題が出た。これを使ってできたインスタンスをセッションに入れたらエラーが出る。そりゃそうか。 定義だけするメソッドを追加。
    function defineClass($name)
    {
        $class = "class {$name} extends DB_Object_Abstract { var \$_name = '{$name}'; }";
        eval($class);
    }
簡単に二重定義になったのでinclude_once的なものも追加。
    function defineClassOnce($name)
    {
        if (!class_exists($name)) {
            DB_Object::defineClass($name);
        }
    }
DBのconnectionが含まれてるから使うときはこんな感じで書くしかないか。
ini_set('unserialize_callback_func', 'autoload');
function autoload()
{
    <strong>include_once 'DB/mysql.php';</strong>
    include_once 'DB/Object.php';
    DB_Object::defineClassOnce('user');
}
キモいぃ。
以下全文。
<?php
require_once 'DB.php';
class DB_Object
{
    var $dsn = "";
    function DB_Object($dsn = "")
    {
        $this->dsn = $dsn;
    }
    function factory($name)
    {
        DB_Object::defineClassOnce($name);
        $obj =  new $name;
        $con = DB::connect($this->dsn);
        $obj->_con = $con;
        return $obj;
    }
    function defineClass($name)
    {
        $class = "class {$name} extends DB_Object_Abstract { var \$_name = '{$name}'; }";
        eval($class);
    }
    function defineClassOnce($name)
    {
        if (!class_exists($name)) {
            DB_Object::defineClass($name);
        }
    }
}
class DB_Object_Abstract
{
    var $_con = null;
    var $_res = null;
    var $_name = '';
    var $_key = 'id';
    function get($column, $value)
    {
        $row = $this->_con->getRow(
            "SELECT * FROM {$this->_name} WHERE $column = ?" ,
            array($value),
            DB_FETCHMODE_ASSOC
        );
        if (is_array($row)) {
            foreach ($row as $name => $val) {
                $this->$name = $val;
            }
        }
    }
    function insert()
    {
        $fields = array();
        foreach ($this as $name => $value) {
            if (!preg_match('/^_.*/', $name)) {
                $fields[$name] = $value;
            }
        }
        $this->_con->autoExecute($this->_name, $fields);
    }
    function update()
    {
        $fields = array();
        foreach ($this as $name => $value) {
            if (!preg_match('/^_.*/', $name)) {
                $fields[$name] = $value;
            }
        }
        $where = $this->_key . ' = ' . $this->{$this->_key};
        $this->_con->autoExecute($this->_name, $fields, DB_AUTOQUERY_UPDATE, $where);
    }
    function delete()
    {
        $where = $this->_key . ' = ' . $this->{$this->_key};
        $this->_con->query('DELETE FROM ' . $this->_name . ' WHERE ' . $where);
    }
    function query($sql)
    {
        $this->_res = $this->_con->query($sql);
    }
    function find()
    {
    }
    function fetch()
    {
    }
}
?>
空のメソッドとか泣ける。
p0t: 光ってから撃たないと駄目Comments
この番組は僕が廃人だったころ深夜に見てました。なつかすぃー
You TubeってOperaだと再生できないんすけど、どうにかしてください…
matsumoto 2006/06/05 11:15:00
暇なおれが代わりに調べた結果、Opear9.0β2だと見れるよ。
http://jp.opera.com/download/index.dml?ver=9.0b
komagata 2006/06/05 11:44:35
更に暇なおれが登場。 Linux版のOpera9.0β2入れてみた。
フォントが恐ぇえ。脅迫状みたいだ。
ひげぽん OSとか作っちゃうかMona-id:rikoタンから vim の -y オプションを教えてもらった。
vimすげぇwwww。
使いやすい!www。
id:secondlifeの人は vim 勉強会でこれを教えてくれればよかったのに(ぉ
すげえwwww、使いやすい!wwwwww としか言いようがない!
こうやってゲームセンターCXが見れるとはいい時代になったもんです。(非合法だけども)
それにしてもすごいよ名人。 選挙とかも『連射』で決めればいいのにな。かなり民主的だと思うよ。




