HsbtDiary
2002/07/02 (火) 雨
■ 最近よんだ本(というか文章)
80年も昔にこんなすばらしい文章があるのに、月曜日の9時によくテレビ朝日に出てくるT教授からまともな話を聞いたことがない。
■ 最近やってること
- JSP
- Java Servlet
- Java Beans
- JDBC
■ ATOK
関西弁が変換できるということで有名なATOK15を買った。オンラインパッケージ販売で買ったのでちょっと安上がりだった。
2004/07/02 (金)
■ 「紀伊山地」の世界遺産登録が決定
素晴らしい。
紀伊山地は高野山、熊野権現と仏教と神道の聖地だが、寺社という言葉が指すようにもともとは寺と神社は一つのもの。天皇を中心とした国家を作る明治政府の政策によって神仏分離令が出されてから寺社は別々のものとなった。
このような寺社の聖地に常々行ってみたいと思っているけど、いかんせん金銭的問題が立ちはだかる。早いとこ、手に職をつけなくてわ。
■ tDiary Bookmarklet
むむ、こりゃ便利。
「いま見ているページのURLを、本文に挿入してくれると最高」を実現すべく小細工してみたけど、自動挿入というまでにはたどり着けなかった。
ぱっと試して見た感じで
target = window.document.forms[0].body; target.focus(); target.value += pnir.url
では、Trackbackの宛先のツッコミ欄にURLが挿入されてしまう。どうやらdocumentオブジェクトは作成されたタブの情報しか持たないようで、タブをまたがって処理はできなかった。Sleipnir独自のAPIでタブごとの操作ができるなら自動挿入は実現できそう。
しょうがないのでdocumentオブジェクトを作成後の処理に
window = pnir.GetWindowObject(id);
title = document.selection.createRange().text
if (title == "") {
title = document.title;
}
window.clipboardData.setData('text',"[[" + title + "|" + pnir.url + "]]")
window = null;
なんてのを追加して、クリップボードにWikiStyleのフォーマットをコピーするように設定。本文欄をクリックしてCtrl+Vという処理が挟まるけど、まぁ許容範囲。
ここまでやって、「TrackBack URLを自動で設定し、更に言及先のリンクを作ってどうするのだ。」と思ったけど、TrackBackはリンクした先に知らせる事だし、リンク作成はここの読者に知らせることと考えれば、それぞれの機能の棲み分けが出来る。
と、「散々語り尽くされた議論を忘れた頃に大発見のように書く」。
2005/07/02 (土)
■ 「ネットに匿名性は不可欠」
こんな記事が出たあとに、新聞記者の暴走が原因とか総務省擁護のコメントが多いけど、これは役人がよく使う手だよね。
予算請求と施策を決定する最終的な材料となるのは報告書なんだから、報告書を決定して発表したあとに「意図はそんなところにはない」とか「マスコミによる過剰報道だ」とか個人的に言い訳をしても説得力がない。
意図がそんなところにないなら、報告書の提言のくだりの後者の部分で「実名で」という言葉をわざわざ入れる必要はないと思う。
■ iTunes 4.9
Windows版が出てます。バージョン番号は4.9.0.17。skypeもそうだけど、いい加減ファイル名にバージョンナンバーを明記してくれないかなあ。
目玉機能のポッドキャストはかなり良い感じ。ラジオ局で一番最初に手を出すのはどこかな。
■ W31Tを使ってみて
基本的に人前で着うたを鳴らすのは恥ずかしいことと思っているので、着信メロディ関係はどうでもいいとして、電子書籍やムービーコンテンツなど、いつの間に携帯は著作権ゴロの集金端末となったのだ!
これだけ著作物まみれにしておいて、機種交換の時にコンテンツの移動は出来ませんというのは筋が通らないわ。
2006/07/02 (日)
■ 今日の買い物
良い天気なのでぶらぶらと札幌駅前へ物欲の旅へ。ビックカメラで来週13日のペルソナ3に備えて
PlayStation 2 (SCPH-75000CB)とステラプレイスで夏物のシャツをいくつか買ってきた。
旭屋書店で
ライド・オン・Rails Ruby on Railsを徹底攻略(吉田 和弘/馬場 道明/吉田 和弘/馬場 道明)を探してみたけど、案の定関東とは時差のある離島なのでおいてなかった。とほほ。
新しく買ったPS2だけど、これ静かだねぇ。今までの掃除機のようなファンがあり得なく感じてきた。さて、CDレンズがぶっ壊れているPS2はどうしようかな。どっちにしろ中古ショップに持っていっても売れるようなものじゃないし、分解して掃除してみる?
■ livedoor Weather Calendar(3)
livedoor お天気プラグインで取得した天気情報をカレンダーっぽく表示するweather_index.rbをtDiaryのcontribパッケージにさっきコミットしました。
動作条件として、ruby-1.8.2以降と拙作livedoor お天気プラグインで取得したxmlデータが必要です。あと、tDiaryを設置したディレクトリじゃなくても動きます。とりあえずデモ→weather_index.rbのデモ
使い方はなんてことなく先頭の4つの変数
@index = "/path/to/this/cgi" # weather_index.rbを置いた場所 @lwws_path = "/path/to/diary/cache/lwws" # lwwsデータの場所(通常はtDiaryのデータディレクトリ + /cache/lwws) @diary_index = "/path/to/diary/cgi" # tDiaryを設置している場所 @theme = "default" # テーマ名
を変えるだけです。@diary_index と @themeは無くてもいいんですがコスメティック重要ってことで、tDiaryのテーマをそれっぽく使ってます。Ajax化とかお天気関係の統計とかはぼちぼちやります。興味のある方はどうぞお試しください。
「ああ、先月の週末は全部雨だったんだなあ」とか、「今年は3月まで雪が降っていたのか」とか振り返りしてみると楽しいかもしれず。
関連情報
■ 最近のiTMS
1001のバイオリンはワンダブラックコーヒーのCMで流れているあの曲。勢いで1000のバイオリンの方もポチっと買ってしまった。タイムマシンにおねがいの方はキリンビールのCM。こっちも夏らしく良い感じの曲で満足満足。
2007/07/02 (月)
■ 7月開始
なんか体制が大きく変わって、そんなこんなの社内システムの情報更新とかそんなのが大量な始末。開発らしい開発は今後のスケジュール調整だけで終わってしまった。
■ 今日のゼルダ
やっと天空都市にたどり着いたよ。平日はダンジョン間の移動だけでおなかいっぱい。今週末にはクリアできそうかなぁ。はやく SRW OG やりたい!
2008/07/02 (水)
■ typepad antispam と Akismet の挙動の違い
7月になったので Test_SelectFilter ブランチを trunk にぶっこもうと最終チェックをしていたときに理解したメモ。
まず typepad antispam は verify-key メソッドが動いていないようで、でたらめな API キーを設定しても通ってしまうし、でたらめな API キーを設定して comment-check メソッドを呼び出しても spam 判定をしてくれる。
という API キーの状態を踏まえて、irb で 実際に挙動を確認してみた。動作チェックに使ったのはえろぺおさん作の TypePad AntiSpamライブラリRuby版をベースに初期値を突っ込んだもの。変更したものは coderepos に置いた。
で実際に動作チェックを irb でしてみる。まずは Akismet から
>> require 'as-antispam.rb' => true >> as = AkismetAntiSpam.new( '66f515ebdae4' ) => #<struct AkismetAntiSpam blog="http://blog.example.com/", user_ip="192.168.0.1", user_agent=nil, article_date="2008-05-31 01:24:00", permalink="http://blog.example.com/entry-1.html", comment_type="comment", comment_author="foo", comment_author_email="foo@bar.com", comment_author_url="http://blog.bar.com/", comment_content="Hello!"> >> as.check => true >> as.comment_content = 'viagra' => "viagra" >> r = as.check => true
ふむ、「viagra」というフレーズだとspam とはみなされないらしい。 次に typepad antispam で試す、APIキーは Akismetと同じものにする(でたらめ)
>> require 'tp-antispam' => true >> tp = TypePadAntiSpam.new( '66f515ebdae4' ) => #<struct TypePadAntiSpam blog="http://blog.example.com/", user_ip="192.168.0.1", user_agent=nil, article_date="2008-05-31 01:24:00", permalink="http://blog.example.com/entry-1.html", comment_type="comment", comment_author="foo", comment_author_email="foo@bar.com", comment_author_url="http://blog.bar.com/", comment_content="Hello!"> >> r = tp.check => true >> tp.comment_content = 'viagra' => "viagra" >> r = tp.check => false
ほう、typepad だと viagra は拒否するらしい。次に色々条件を変えてみる。まずは comment_author_url を nil にする。
>> as.comment_author_url = nil => nil >> r = as.check => true
Akismet は結果に変化なし。
>> tp.comment_author_url = nil => nil >> r = tp.check => true
えー、typepad は comment_author_url を空にするだけで同じ viagra でもスルーしてしまうのか。
この後、二時間くらい色々と条件を変えて試してみたんだけど、antispam サービスにリクエストするパラメータの組み合わせによって、同じコメント内容でも判定結果が異なるっぽい。とりあえず、typepad antispam の方も spam フィルタとしての機能は実現してるから問題は無いね。
追記
えろぺおさんのツッコミに従って nil ではなく、空文字で試してみた。
>> tp.comment_author_url = "" => "" >> r = tp.check => true >> tp.comment_author_url = "http://blog.bar.com/" => "http://blog.bar.com/" >> r = tp.check => false
うーむ、やっぱり何らかの文字列がないとダメっぽいなー。
■ 最近の買い物
WEB+DB PRESS Vol.45 と 初めてのRuby の2冊を購入。Web+DBの方は
- OpenID 特集
- Ruby-1.8.7 での変更点
- iknow 開発の話
が面白かった。初めての Ruby は通勤途中にぱらぱらと眺めている途中なのでまだ2章。感想はあとで書く。
WEB+DB PRESS Vol.45
技術評論社
¥ 1,554
初めてのRuby
オライリージャパン
¥ 2,310

# kyoun [月曜の9時にテレビ朝日を見てるようではいけない(笑)]
# しばた [おお,kyoun初見参!最近の調子はどうだい?]
# kyoun [何せネットにつながったから好調よ(^_^)]