Pukiwiki

プロジェクトの web ページのベースにすべく、Pukiwiki を猛烈に Hack 中。skin を書いたり、plugin 書いたり。
別に pukiwiki じゃなくてもいいかな、と思っていろいろ調べたのだが、決め手は、
– Emacs の pukiwiki-mode で編集できる
– PHP 以外になにも (データベースとかが) いらない
の2点。後者は、web サイトの規模が大きくなるとマイナス要因なのだが、小規模なら引っ越しが楽なほうがいいしね。
web プログラミングはたのしいぜ!

New Age その後

「ニューエイジについてのキリスト教的考察」 を読み終えた。ざっと、だが。
原題はこうだ:
JESUS CHRIST THE BEARER OF THE WATER OF LIFE: A Christian reflection on the “New Age”
人間はあくまでも被造物であって、創造主たる神と等しくなることはできない。自らを神と等しい者とする、というのはキリスト教 (やその他のいくつかの、被造物と創造主を分けて考える宗教では) 途方もない罪であるが、汎神論を唱える人たちは我々のうちにも神格があり、それによって人はより高位の存在になれる、と主張する。根本的に違うのはそのへんなんじゃないか、と思う。
僕は謙虚な思想の方が好きだ (だからクリスチャンだ、という訳でもないが)。
いろんなことをして神のようになることを目指す者ではなく、ただ神の恩寵のなかに生かされることを感謝する者でありたいと。

魚眼と広角

FISHEYE2
170度の広角レンズを搭載し、アーティスティックな魚眼写真が撮れるトイカメラ。
という紹介文を見かけたのだが、広角レンズと魚眼レンズは違うんだけどなー。画角 170 じゃ、まあ、魚眼なんでしょうけれど。

大人のマナー

民営鉄道協会の、駅と電車内のマナーアンケート というのが新聞に載っていた。
座り方とか携帯電話よりも、電車が混んでる時に、まだ降りる人が車内に残っているのに無理矢理乗ってくるひと、というのがすごく腹立つんですが、あれはどうなんでしょうね。ちょっと前までは、高校生とかそれくらいの、調子に乗っちゃってるワカモノの行為だったのが、最近は逆にオジサンオバサンのほうが目立つ気がします。

gdk_threads_enter()

GLib の object は全部自動的にロックされるが、GTK ではそうではない。だけど、ちゃんと thread aware な作りになっている。というのを今日はじめて知った。お恥ずかしい。いままでは GTK を使うのはメインのプロセスだけで、他のスレッドでは GTK には絶対手を触れないようにしてた (つもりだったが、一カ所チョンボをしているところがあり、そこでたまに死んでた… ) のだ。
で、GTK で thread を使うときは、gtk_init() の前に gdk_threads_init() しておき、他のスレッドから GTK を操作するときには gdk_threads_enter() で lock して、gdk_threads_leave() で unlock するんだそうだ。これで万全。
ここで、「GTK の操作」というのには、GTK と競合するおそれのある、Pango や何かを使う操作も含まれると考えたほうがよい。Freetype の内側あたりで競合が発生して crash する場合には、gdk_threads_{enter,leave}() を使って解決できる。
でも、Win32 backend では、これは効かない。効かないだけでなく、呼んではいけない (!) ようだ。