トップ 最新 追記

どんぞこ日誌

2003|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|07|08|12|
2007|01|04|08|12|
2008|01|02|03|04|06|07|08|10|11|12|
2009|01|02|04|05|06|07|08|09|11|12|
2010|01|03|04|07|08|10|11|12|
2011|01|02|03|04|05|06|07|08|10|12|
2012|01|02|03|05|06|07|08|09|10|
2013|01|02|07|08|09|
2014|08|09|
2015|08|
2016|06|07|12|
2017|01|

同人関連(どんぞこ楽屋) | 旧い雑文   


■2005-02-04

* [状況] 近況B!

 先月末で勤め先を退職しました。で、なぜか会社を設立しました。予想される年収が減って借金が出来ました。げふ。

* [メモ] 後でみるものとかその他B!

 とりあえず一念発起して公式のプラグイン置き場にあげるうぅ。
・backlinks  ページにリンクしている他のページの一覧表示
・atschedule  スケジュールをメール配信するプラグイン(バージョンアップ)

「ネットと子どもたち協議会」とか
日本の小さな町
ベルトコンベアで流れてくる猫を仕分けるバイト

・DBD::WikiとClass::Wiki
・DBD::MIDIってのも考えたんだけど実装がめんどくさそう
・掲示板でみかけたthreadsとencodingでクラッシュする話

本日のツッコミ(全6件) [ツッコミを入れる]

_  [おめでとうございます。 新たなる門出とご清栄を祈りつつ。 しかして茸は如何せん?]

_ まかまか [ありがとうございます〜 2月末までいっぱいいっぱいなので、茸は3月に入ったらぜひ!]

_  [マジですか! 何を始められたんですか? 雇ってください(笑)]

_ まかまか [実は前会社のシステム部が独立しただけなのです。形だけ代表取締役でございます。大丈夫なのかしらん。 いやあ、業界が一緒..]

_  [よう、社長! ……気の利いたコメントが思い浮かばないよ。  まぁまじめな話、人当たりのよいまかまか氏なら、そつなく会..]

_ SEO拳イ゜ [、ウ、ホユ{麺<a href=http://www.seozone.jp>SEO拳イ゜</a>、マ量ヒY惚貧了燕幣..]

[]

■2005-02-07

* [CGI] TypeKeyでFreeStyleWikiB!

 去年の夏にAuthen::TypeKeyをFreeStyleWikiに組み込むという話を書きましたが、実際に試してみました。TypeKeyに登録している方はぜひここの右上のメニューにあるTypeKeyをクリックしてログインしてみてください。あと、PuerPerlのMath::Pariを使っても、本当のMath::Pariよりもだいぶ遅いとはいえ、実用に耐えそうです(上のテストはXS版Math::Pariです)。

 先日のbacklinksプラグインは既に同じ機能のものが登録されていて大失敗でした。

* [メモ] Perlその他B!

・threadsとencodingの件→mainパッケージでbinmode(STD [OUT|IN], ":raw :encoding(xxx)")するとthreadas->newで落ちる。子スレッド内でThread::Use経由でencodingするだけなら大丈夫。でも今度はencodeがうまくいかない……

・今月のAcmeはネタ切れか? My Favorite Perl Modulesみたいなサイトがあるなら、もうここで紹介してるのがバカバカしいかも。

自分のした事実を認めること  コメント欄の「一市民」は"リベラル"と"左翼"をどのように理解しているのだろうか(この場合イコールと想定されているようだから、結局「左翼」とは何かにいくのかなあ)

* [Perl][メモ] CDBIサブクラスで複数データベースを扱うB!

  同じテーブル構造が複数のデータベースにあって、一つのClass::DBIサブクラスで両方を扱いたい用があったので、Using Multiple Databasesを参考にしたのですが、うまくいきません(単純なretrieveははうまくいくのですが、might_haveを通じての取り出し等がうまくきません)。で、以下の方法でなんとかなったのでメモ。

 package MultiDB;
 use base qw(Class::DBI);
 
 __PACKAGE__->mk_classdata('current_dbh');
 
 sub change_db {
   my ($class,$dbname,$user,$pass,$attr) = @_;
 
   if($dbname{$dbname}){
     $class->current_dbh($dbname);
   }
   else{ # $dbnameをキーにするのは良くないね……
     $dbname{$dbname} = 1;
     $class->current_dbh($dbname);
     Ima::DBI->set_db(
      $dbname,"dbi:xx=$dbname;xx",$user,$pass,$attr
     );
   }
   return $dbname;
}
 
 sub db_Main {
   my $class   = shift;
   my $method  = "db_" . $class->current_dbh();
   $class->$method;
 }
 
 ...なんかいろいろ
 
 # mainスクリプト
 
 MultiDB->change_db('table_a');
 {
   my @data = MultiDB->retreive_all;
   # .. code ..
 }
 
 MultiDB->change_db('table_b');
 {
   my @data = MultiDB->retreive_all;
   # .. code ..
 }

  メインコードでテーブルを変える毎にブロックで囲っているのは、同一スコープ内ではメモリ内にあるオブジェクトの一意性が保持される(弱いリファレンスを使う)というClass::DBIの仕様があるため。スコープが変われば破棄されます。table_bから取り出したidと同じものがtable_aにあるとそちらが取り出されてしまい、最初戸惑いました。 んー、ちょっと上の例は問題があるので修正しないと……

[]

■2005-02-13

* [Perl] Jcode 1.99B!

 ついにDan氏のJcodeの2.0ベータ版が出ました。Perl 5.8.1より前ならJcode 0.88互換、5.8.1以上ならEncodeのラッパーになると。結構JEncodeのコードも使ってくださっていて、これでJEncodeの役目も一段落です。ちなみに手元の環境だとWindows ActivePerl 5.8.0、5.8.3でそれぞれtestをパスしました。

* [CGI] FOAFとかB!

 先日のFreeStyleWikiとTypeKey関連で、「TypeKeyとFOAFの繋ぎとかジャッとすれば」ここギコさん)というのがあったので、FreeStyleWikiでも何が出来るかしらとつらつらとメモしてみたのですが、こんな感じなのかなあ……

 とりあえずknowsが辿れるように実験してみました。CPANのXML::FOAFはベースとなるRDF::Coreが重すぎるのと、seeAlsoをどうやって取り出すのかわからなかったので、XML::ParserのStyleを使って実装。有名どころのfoafファイルで試したところ、一応辿ってくれるみたい。右にある私のfoaf.rdfを使うと悲惨なことに。ところでFOAFって何て発音するのでしょうか。ふぉあっふで良い?

[]

■2005-02-15

* [Perl] FOAF続きB!

 先日の続きで、リソースとmbox_sha1sumを指定するとknowsを辿ってそのidが存在するかチェックする実験

* [メモ] いろいろB!

 とりあえず感動したので ゲバ文字フォントに「萌」が入っている理由(>記識の外) 谷川雁! そーなんだ! 一時期使ったことがありますが、昔より文字増えてる?

 ドイツ白バラ抵抗運動 例の「政治ビラを投函したら逮捕」という、いかレた情況関連。 「反戦『落書き』事件と立川反戦ビラ事件は、法の公平性や公法適用のフェアネスを毀損する訴追であるという点、そして訴追した検察に『壊したのは誰か』という社会状況に対するフェアネスが欠けているという点で共通しています。」(リンク先より引用)

* [メモ] TRPG FreeStyleWikiB!

 そういえば以前、WikiでTRPGてなことを始めたのに途中でほったらかしていましたね。で、FOAFでパーティを記述して認証に使えばよいじゃないの、と今思いつきました。TypeKey & FOAF 認証FreeStyleWikiの実験に使えそう。

 ググッったら同じようなこと考えている方がいました。→次は FOAF だ NPCも含めようというアイディアみたい。なるほど〜

本日のツッコミ(全1件) [ツッコミを入れる]

_ まこちん [あんまり関係ない話題ですが、トラックバックしました。 昔TRPGにはまっていた頃の本を読み返して、遮二無二TRPGが..]

[]

■2005-02-20

* [CGI] typekeyプラグインB!

 FreeStyleWiki用のtypekeyプラグインを公式サイトに投稿しました。

* [メモ] Class::なんちゃらB!

  つくった本人はすっかり忘れていたのですが、そういえばClass::Wikiはまだ公開してなかったですね。まだソースが汚いから、もそっと寝かせておきましょう(寝かしてたらブラッシュアップできません)。

 Class::Blogもありですね。(HT::Blog

 Class::Blogも思いついたのですが、こちらはきっと誰かがつくってくれると期待します。XML-RPC for Wikiよりは実用性が高いですし(一応DBD::WikiはXML-RPC以外で実装できるようにしてあります)。あと、Class::Wikiは大変効率よくスパムできそうなのが困りものです(retrieve_allしてupdate)。そうすると(?)、やはりウケを狙うにはClass::MIDIです。そしてそのためのDBD::MIDI。これさえあればこんなことも(noteの型はどちらでもOKということで)。

UPDATE track1 SET note = note + 12 WHERE note = 'C4';

まあ素敵。これでもうシーケンサはいりませんね!?

* [メモ][Perl] SQL::InterpolateB!

 SQL::Interpolate。SQL::Abstractの複雑さを克服したものらしいのですが。時間のあるときにみてみたいな。

[]

■2005-02-24

* [CGI] FOAF認証FreeStyleWikiB!

 TypeKeyでログインして、FOAFを使って各ページの編集・閲覧権を分散的に管理するFreeStyleWiki。こんな感じになりました。自分で試した分には一応期待通りの動作です。ただ、大変残念なことに、このページの横にある私のfoaf.rdfにはknowsがありません。ということは、現状では誰もFOAF認証できないのです。
  というわけで、誰ぞ実験(お知り合いに)なってくださる方いらっしゃいましたら、一声かけてくださいませ。
 誰がお前のknows先なんぞになるか! ということでしたら、お持ちのFOAFファイルをプロジェクトのルートに設定するというのでも。

 私はSNSのことはわからない(そもそも触れたことがない)ので、なんとなく、リアルの人間関係をネットに持ち込む気持ちの悪いシステムだと思っていましたが、ここギコ!さんの一連の文章はとても勉強になりました。先日のTRPGのパーティの例みたいに、各局面でFOAFを使うと大層面白そうな気もしますし。

* [Perl] CDBI::Plugin::IteratorB!

 CPANに登録されていらっしゃる。素晴らしいなあ。0.04ベースの個人的改造は結局、自動的にバージョン判定をするmysqlサブクラスをつくったところで力尽きてしまいました。はい、おとなしくViewを……

* [メモ] 抑圧?B!

 最近のよくキレる子ども ある種の力関係(強制力)もないのに抑圧、弾圧と叫ぶ人。これも議論出来ない人の武器っぽい。

 賃金格差 「権益がまったく与えられないところに権益の夢を見る。権益を離れれば離れるほど、『すべき事』は抽象化し、自らの行動指針を持たなくなる」

[]

■2005-02-28

* [雑感] 眠くてB!

 夜寝をして起きたら1:30。このまま朝まで仕事をすることに(で、なぜこれを書いてるのかしら)。
  昨日は昼過ぎから施設点検停電があるため、それにあわせて出社の予定だったのですが、朝から停電になると電話でたたき起こされてがっくりでした。社員の方が居合わせてなかったら、知らないままでしたよ……

* [CGI] FOAF認証WikiB!

 ここギコ!さんが手伝ってくださったおかげで、ちゃんと動作することを確認。さらにいくつかテストを重ねながらソースを綺麗にしてまとめたいと思います。まあ、現実にFSWikiでこれを使う人がいるのかどうかは甚だ怪しいのですが、差し当たり考えないことに。

* [Perl] Class::DBI::Plugin::Iterator 0.10B!

  Class::DBI::Plugin::Iteratorの0.10を作ってみた。より、「CPANに上げるのはまかまかさん待ちということで」。  たいへん恐縮です(汗)。またわざわざ名指ししてくださったことを感謝します。

 importルーチンでドライバの判定をされていて(私も最初そうしたのですが)これだとアプリケーションベースクラスでPlugin::Iteratorを宣言して、継承クラスではPlugin::Iteratorを呼ばずに済ませようとするとエラーになります(db_Mainが呼び出せないから)。もちろん、どのクラスでも明示的にPlugin::Iteratorを呼べ! ということならこれで十分だったと思いますし、ドキュメントにその旨書かれてあれば何の問題もないかと。 っていうか、もう十分至れり尽くせりで有り難いです。

 私は根が「可能な限り現状維持で汎用的に」(?)をモットーにしているもので、ベースクラスで一回だけPlugin::Iteratorを呼んで済ませたかったのです。改造したものと0.10との差分はこんな感じです(実際にはmysqlのバージョン判定をさせるため、もっと込み入っていたのですが)。 newにアドホックな変数を渡しているのが見苦しいことこの上ない……(そなんこんなんで力尽きたわけです)

[]