おまぬけ活動日誌

最近のツッコまれどころ

この日誌から Google してもらう


2002年07月18日(Thu) 今日はちゃんとした雨

朝ご飯ご版(バージョン管理されてるご飯?)にパンを食べようとしたらカビててショック…。しかたがないのでオカズ(消しゴムみたいな形をした消しゴムみたいな味の冷凍白身魚を炒めたもの)だけ食べた。雨合羽を着て自転車通勤。

momongaのCD-ROMはどのファイルシステムを扱えるのか

そうそう書こうと思って忘れてた。 CD-ROMをbootしてcat /proc/filesystemsしてみると…

rootfs bdev proc sockfs tmpfs pipefs ext2 cramfs ramfs iso9660 devpts vfat ext3 reiserfs jfs xfs

カーネルはこれだけのファイルシステムを扱えるようですね。 コマンドの方は、ls /usr/sbin/mk*fs* して

mkdosfs mke2fs mkfs.ext2 mkfs.ext3 mkfs.jfs mkfs.msdos mkfs.vfat mkfs.xfs mkreiserfs

ls /usr/sbin/*fsck* して、

e2fsck fsck fsck.ext2 fsck.ext3 fsck.jfs fsck.xfs reiserfsck

ということです。ちなみに、このCD-ROMで起動すると、 viも使えちゃうんですよ。rescue diskとしてはけっこう便利だと思います。 以前書いたように、eth0を上げることもできるのですが、 ssh系のツールは無いので、ファイルを転送するには、 anonymous ftpかrcpということになるんだろうな。(未確認)

入っていて欲しいのに入ってないのは、shutdownコマンド… と思ったらbashのexitコマンドでリブートされました。

momongaのレポジトリはいつできるのかな〜?

どーしてrpmがちゃんと動かなかったのか

結果的には、rpm-buildが無かっからでした。 ならgcc.specがみつからないなんてエラー出すなようなーという感じですが、 多分、perrorの引数を間違えてるのでしょう。

straceまでひっぱりだして原因を探した詳細は、 こちら

昼過ぎからいい天気になってきた

春らしくていいな。もう夏のハズだけど。

集録書き中

今回は、まず日本語でアウトラインを作って、それを英語にふくらませてみようかと思ったのですが。いや、英語が出てこないのなんのって…。やっぱり最初から英語で考えた方がいいのかなぁ…。先は長いぜ。

隣りのグループの友人のお別れパーティー

今度別のポストに移ることになった人のお別れパーティーに行ってきた。面白いことに、こちらでは、出て行く人がパーティーを用意して、残る人を招くのが普通のようです。バイエルン料理(肉とザワークラウト的野菜)とビール、赤白ワイン、ジュース、水(もちろん炭酸入り)、コーヒー、ケーキなどが用意されてワイワイ話をする。で、適当な時間に出て行く人にお別れを言って引き挙げるわけです。

今回アメリカに移ることになったその友人は今日が最後の出勤で、週末はアパートの片づけ、荷物を送り出してから水曜日に飛行機に乗るのだそうだ。それに加えてパーティーの準備と片づけもあるわけで、大変そう。でも、グループの人が主催してるわけじゃないので、僕みたいに別のグループに居ても紛れ込んでお別れを言ってこられるってのがいい点なんだな。

さて。シゴトを再開。今回は自制して飲まなかったぞ。うむ。

momonga-0.6.0-1m飼育中

そういうわけで、 新バージョンのmomongaを飼育中です。 必要なパッケージのオモコンをしかけて帰るので、 こちらの明朝(日本時間で金曜日の昼ごろ)にISOイメージを作れることでしょう。

問題は、もう手元にCD-Rメディアが無いということ。 勝手ながら手元でのテスト無しに配布しちゃうことになります。

そういうわけで、そのうち、

  1. ブートフロッピーからブートして、
  2. ローカルディスクの中のツリーからstage2を取ってくる

ようなFDブートイメージが作りたい今日このごろ。

本当は、bash#が出てからの設定部分やパッケージのインストールをする部分を 作ってかなきゃいけないんだよね。 残念ながら僕にはそこまで手を動かしてる時間はなさそう。 ruby-newt等わかる方どうぞよろしくです。

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

> UmaShika [えーとですね、fsck.hogeって、使えないんですわ。(除くext2) xfsだとxfs_hogeちゅうのがないと..]

> ずんだあん [ありゃー。そうなのかぁ。xfs_hogeってのは無かったような。今はwinなので確認できないけど。]

> かずひこ [cvs に projects/momonga 作りました。さっそく zunda さんの希望を参考にいじります。]

> ずんだあん [おぉ、ありがとうございます。僕もいぢりたいよぉ〜。]

> ずんだあん [momonga、既にバージョンアップしてるし♪]

> ちびひろ [所変わったお別れパーティーの様子、興味深かったです ところであのシュワシュワという炭酸入り水は好みですか? 私あれが..]

> ずんだあん [ドイツ語では「オーネ コーレンぞいれ」(なぜか最後はひらがな的)と言います。僕は慣れてしまったのでガス入りの方が好き..]


2003年07月18日(Fri) 昨日よりはいい天気

湿度が高いかも。

[tDiary] お天気プラグインを設定プラグインに対応させてみました

設定画面のサンプル(そのうち消します)。実装はこれでいいのかな?

(追記) 6月中旬以前のadd_conf_procの無いtDiaryではプラグインのエラーが出て動かないかもしれません。お試しになる方は、今まで動いていたweather.rbをどこかにコピーしてからお試しください。もし動いた時はご一報いただけるとうれしいです。

(また追記)さっそく、halchanさんkosakaさんに使っていただいています。ありがとうございます。OKを押すとInternal Server Errorが出る…以前、IRCでどなたかがxreaでtDiaryを使っていて、Rubyのbegin周辺で、「unknown node type 0」というエラーが出ていたときに、beginの後に空行を加えると直ったとおっしゃってました。もしどこでエラーが出ているかわかれば、そこら辺に空行を加えることで直るかもしれません。

(もっと追記)手元でtDiaryを1.5.4に巻き戻して、weather.rbを入れた状態で、日記の更新と設定ができることを確認しました。少なくとも1.5.4以降をお使いの方は、ブラウザで設定する機能のあるweather.rbを使っていただけます。ブラウザからの設定のためには新しいtDiaryが必要ですが。

Creative Commons Licenseの賠償責任

バーチャルネット法律娘 真紀奈17歳さんのところから、クリエイティブ・コモンズ・ジャパンに動きがあったという記事。

残念ながら手元ではPDFの日本語が読めないのですが、Lenz教授「著作権とCreative Commons実施権」によると、Creative Commons Licenseでは、

その著作物が自分のものであり他人の著作物を侵害しているものではないということを表明し、保証する。そして、これに違反して第三者に損害が発生した場合、賠償の責任を負うとされている

とのことです。ホント?

試しにtDiary-users Projectに適用されているライセンスを斜め読みしてみると、

  • 5.a.ii: By offering the Work for public release under this License, Licensor represents and warrants that, to the best of Licensor's knowledge after reasonable inquiry: (i項を中略) The Work does not infringe the copyright, trademark, publicity rights, common law rights or any other right of any third party or constitute defamation, invasion of privacy or other tortious injury to any third party.
  • 6. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, AND EXCEPT FOR DAMAGES ARISING FROM LIABILITY TO A THIRD PARTY RESULTING FROM BREACH OF THE WARRANTIES IN SECTION 5, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

と書いてありました。(強調は筆者。)

うわー。

Wikiで責任を追うのは誰になるんだろう?どこかの閉鎖してしまったblogみたいな使い方は問題外として、Wikiに書く人は5.a.iiをちゃんと理解して、自分の書き込みによって万が一生まれてしまった6項の損害賠償責任をWiki運営者に代わって持つ覚悟が必要かもしれないですね。

この日誌にもCreative Commons Licenseをつけようかと思ってたのですが、もう少し真剣に考えよう。もちろん、このライセンスが無くたって、著作権の侵害をしていいわけではないのですが。

[Ruby] Rubyで呼ばれたメソッドが定義されていない時はmethod_missingが呼ばれる

refe method_missingより、

Object#method_missing
--- method_missing(name, args, ... )

    呼びだされたメソッドが定義されていなかった時、Ruby がこのメソッド
    を呼び出します。呼び出しに失敗したメソッドの名前 (Symbol) とそ
    の時の引数が name と arg ... に渡されます。

    デフォルトではこのメソッドは例外 NameError を発生させます。

tDiaryは勉強になるなあ。

[Ruby][tDiary] ruby-1.8.0とruby-1.6.7とではArray.joinの返り値が違う

手元でruby-1.8.0でtDiaryを見ようと思ったら動かんではないかい。 そういうわけで昨日のベンチマークは ぜんぜん正確ではない。キャッシュ消してなかったし。

調べてみると、Array.join()の挙動が変わったことがわかりました。 emptdiary_style.rb内で拡張文字列クラスを定義して、それをjoinして、 返り値に同じ拡張文字列クラスを期待しているのですが、 実際にはStringが返ってくるようです。具体的には以下のような感じ。

$ cat test.rb
class Mojiretsu < String; end
puts [ Mojiretsu.new( 'a' ), Mojiretsu.new( 'b' ) ].join( ',' ).class

$ ruby -v test.rb
ruby 1.6.7 (2002-03-01) [i586-linux]
Mojiretsu

$ /usr/local/ruby-1.8/bin/ruby -v test.rb
ruby 1.8.0 (2003-07-18) [i686-linux]
String

この部分の対策をして、emptdiary_style.rbをcommitしました。 ruby-1.8を使おうと思ったけどemptdiaryスタイルじゃ動かんやんけー、 という方はtDiary本体を更新してください。

[Ruby][tDiary] そういうわけでベンチマークやりなおし

テスト対象はこの日誌の7月14日分とほぼ同じデータです。 ちゃんとキャッシュを消して。

$ ruby -v
ruby 1.6.7 (2002-03-01) [i586-linux]
$ rm -f ../data/cache/{*.rb,*.parser*} ; echo date=20030714 | time ruby index.rb > /dev/null
1.85user 0.06system 0:01.92elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (665major+3115minor)pagefaults 0swaps
$ /usr/local/ruby-1.8/bin/ruby -v
ruby 1.8.0 (2003-07-18) [i686-linux]
$ rm -f ../data/cache/{*.rb,*.parser*} ; echo date=20030714 | time /usr/local/ruby-1.8/bin/ruby index.rb > /dev/null
1.47user 0.13system 0:01.60elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (740major+3993minor)pagefaults 0swaps

ふむ。userとsystemを合わせて1.6.7に比べて16%の増速でござる。 よかったよかった♪

[tDiary] disp_referrer2.rbはどれくらい遅いか

上と同じように、プラグインを出し入れして調べてみました。ruby-1.8.0で、今回はキャッシュの消去はしません。

00default.rbのみの場合
1.14user 0.04system 0:01.20elapsed 97%CPU
disp_referrer.rbを加えた場合
1.21user 0.06system 0:01.27elapsed 99%CPU
disp_referrer2.rbを加えた場合
0.60user 0.03system 0:00.66elapsed 95%CPU

ありー?素のreferer_of_today_longより速いってのはどういうことだろ?

じゃあ、1.6.7で。

00default.rbのみの場合
1.29user 0.11system 0:01.40elapsed 99%CPU
30386 bytes
disp_referrer.rbを加えた場合
1.50user 0.06system 0:01.56elapsed 99%CPU
30387 bytes
disp_referrer2.rbを加えた場合
0.80user 0.11system 0:00.91elapsed 99%CPU
31249 bytes

おかしいなー。生成する文字数が効いてるのだろうか? 上にwc -cの結果を追加してみよう…文字数はだいたい一緒みたいだ。

とにかく、手元ではdisp_referrer2.rbは 素のreferer_of_today_longよりも激速という結果になっちゃいました…。

…おかしい。

[tDiary] どうしてdisp_referrer2.rbは速いのか?

-rprofileした結果を整理してみました。1.8.0です。 特長的な部分だけ (プラグインの有無でcall回数が大きく違うように見えるcallだけ) 抜きだしてみます。 メソッド名の横の数字はcall回数です。

nametotal ms/call00defaultのみdisp_referrer.rbdisp_refrrer2.rbも
cumlative sec-7.8321.7811.13
Array#each133.72126126172
TDiary::DiaryBase.disp_referer78.14100100142
Array#sort!23.33006
Array#collect18.3111014
TDiary::Config#charset13.33030
String#%3.000010
Class#new1.460200974804
String#scan1.250024
CGI#escapeHTML1.07202202244
String#gsub!0.760200284
CGI#unescape0.6910200
String#strip0.5600107
Array#unshift0.490610
Regexp#initialize0.130200354710
Regexp#=~0.100200334885

ふーむん。profileを取った時は、素のtDiaryの方が速かった模様。 disp_referrer.rbと比べると、 Class#new、Array.unshift、Regexp#initialize、また、 Regexp#=~で得をしてるようです。Class#newって何やってるんだろう? 一方、Array#each、sort!、collect、String#gsub!あたりは call当たりの時間がかかるのに、disp_referrer2.rbで多用されている。

そのうちソースを見て改善できるところは改善してみよう。

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

> halchan's diary [早速使っていますが、今の所は問題なしです。 [TrackBack from http://www.halchan.o..]


2006年07月18日(Tue) オフィス引越し

廊下の向いの部屋に引越しました。もう海が見えません。

[memo] cupsの設定

/etc/cups/cupsd.confで、Browsing Off すると設定していない余計なプリンタを、http://localhost:631/ で見ずに済む。

デフォルトのプリンターを変えるのは、printers.confのDefaultPrinterタグとPrinterタグを入れ替える。cupsdの再起動を忘れない。これくらいのことは http://localhost:631/ からできるだろうと思っていたが見つけられなかった。

…printcapに書けば済んでいた時代がなつかしい。

[run] 行き止まり+CSO延長 41分32秒

このところ運動づいている(といっても2時間のカヤックと30分の水泳だけ)ので、距離を伸ばしてみた。消化器系以外は問題ないようだ。消化器系は大問題だ。


2007年07月18日(Wed) 今日も肉体労働〜るるる〜

[memo] WikiForme - 自分用Wiki記法パーサ

わあ!遅々として進まないRDLeavesにも使えるかも!

あとで読む。(コードを)

kakutani &tumblrより。

tDiaryのカテゴリは大文字と小文字を区別する。区別しない方が便利なような気もする。

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

> ただただし [おれもそう思う >カテゴリ つーか、「カテゴリ」は区別すべきで、タグは区別すべきじゃないんだな、きっと(なわきゃない..]

> zunda [でもいまさら仕様かえるわけにもいかないですよねぇ…。]


2009年07月18日(Sat) 障害対応は同僚にまかせてしまった

ヒヨコが襲撃される

先週我が家にやってきたヒヨコ、少しずつ住環境を整えて、昨日からは洗濯場で巨大なプラスティックケースに暮らしてます。

ところが…。今日は少し天気も良いし、明いところに出してやろうと、ネコ避けにスノコのようなものを載せて駐車場に出してやりました。気持ち良さそうに餌を食べる2羽。一段落ついて人間は家の中に入ってぼーっとしてましたが、ただならぬ雰囲気に外を見やると、激しく鳴くヒヨコと逃げていく一匹の猫。

プラスティックケースに行ってみると、首から出血しているヒヨコが1羽横になたまま鳴いてました。

しきりに「もう1羽はどこ?」と訊くずんか。ごめんね。ほんの1時間ほど外に置いておいただけなのですが、このスノコの端からなら猫は入れるかもなあ、と思っていたことが現実になってしまいました。野生は厳しい。いや、猫もニワトリも在来種ではないのですが。

残った1羽は手で保温しながら水を少しずつ飲ませておいたら、翌日には糞もして、餌も食べるようになってきました。しかし座敷ニワトリにしてしまいそうでこわい。糞から人間に感染する病気もあるそうなので、要注意です。


作り手とその取り巻きだけが楽しんでる間は本物じゃない。その中身が理解できない人々の生活を変えてこそ本物だ


zunda <zunda at freeshell.org>