2004年4月27日火曜日

Date::Simple 3.0のバグ?

Date-Simpleはperlで日付処理を簡単に行うことができるので、よく使うんですが、1900年2月28日以前の日付をコンストラクタに与えると、一日前のオブジェクトができてしまうことに気づきました。Redhat7.2, per5.6.1, Date::Simple3.0という環境で確認しました。モジュールのバグなのかOSの問題なのか、モジュールの中身を詳しく見ていないのでまだわかりませんが、Date::Simple3.xで1900年2月28日以前の日付を扱うときは注意が必要そうです。



ちなみにテストに用いたスクリプトはこんな感じです。

#!/usr/local/bin/perl

use strict;
use Date::Simple 3.0;

for( my $year = 1880; $year < 1920; $year++ ){
for( my $month = 1; $month < 13; $month++ ){
my $day_max = get_day_max($year,$month);
for( my $day = 1; $day <= $day_max; $day++ ){
my $date = Date::Simple->new($year,$month,$day);
print "Bad:",
sprintf('%d-%02d-%02d' , $year, $month, $day),
" ne $date\n"
unless $day == $date->day;
}
}
}

sub get_day_max{
my ($year,$month) = @_;
return $month == 2
? get_february_day_max($year)
}

sub get_february_day_max{
my $year = shift;
if ( $year % 4 == 0 ) {
if ( $year % 100 == 0 ) {
if( $year % 400 == 0 ) {
return 29
}else{
return 28
}
} else {
return 29
}
} else {
return 28
}
}

コンストラクタに渡した日にちとできたオブジェクトから取得した日にちが異なる場合以下のようにprintします。
Bad:1900-02-20 ne 1900-02-19
Bad:1900-02-21 ne 1900-02-20
Bad:1900-02-22 ne 1900-02-21
Bad:1900-02-23 ne 1900-02-22
Bad:1900-02-24 ne 1900-02-23
Bad:1900-02-25 ne 1900-02-24
Bad:1900-02-26 ne 1900-02-25
Bad:1900-02-27 ne 1900-02-26
Bad:1900-02-28 ne 1900-02-27


2004年4月25日日曜日

Apacheクックブックいいです

Apacheクックブック―Webサーバ管理者のためのレシピ集
Apacheクックブック―Webサーバ管理者のためのレシピ集

が届いたのでぱらぱら眺めていたんですが、この本いいです!モジュールのインストールからログの記録、バーチャルホストの設定、SSLの設定などどのレシピも実践的で役立つものばかり。たとえば、レシピ9.7「エラーを通知する」を応用すればInternal Server Errorが起こったときにメールで通知することができるようになります。



また、普段何気なく書いている設定についても細かい説明があるので、理解を深めるのにも役に立ちます。サーバー管理者は一度は目を通しておくべき本だと思いました。

サイコドクター楷恭介

サイコドクター楷恭介 2 (2)
の最新刊をコンビにで見つけたので買ってきました。今回はドッペルゲンガーのお話。もともとサイコドクターという漫画はぜんぜん知らなかったんですが、本屋の漫画コーナーをぶらついているときにきらきらしているカバーが目につき、なんとなく買ったのが最初でした。なんとなく買った漫画でしたが、かなり面白いです。


「あなたの心を覗かせてください。」


この言葉にぞくっときますねw

サイコドクター楷恭介 1 (1)



また、
サイコドクター楷恭介の部屋―あなたの心を映し出す心理テスト集
という本も出ているそうです。ちょっと興味あり。

サイコドクター楷恭介の部屋―あなたの心を映し出す心理テスト集




2004年4月23日金曜日

ectoでポストしてみる

ectoでポストしてみるテストです。時間がなくてなかなかいじれなかったんですが、ようやく試すことができました。いつものインターフェースでないとなんか違和感がありますが、なかなかいい感じですね。

2004年4月21日水曜日

Apacheクックブック

Apacheクックブック―Webサーバ管理者のためのレシピ集 Apache2.0、1.3対応という本が発売されていることをしり早速注文。Perlクックブックに相当お世話になっているのでクックブックという響きにはどうも弱いぼくですが、NDO::WeblogのnaoyaさんもNDO::Weblog: Apache クックブック
のエントリーでいい本だと紹介しているので内容は確かでしょう。届くのが楽しみです。


2004年4月19日月曜日

バッドノウハウカンファレンス2004

Shibuya Perl Mongers : バッドノウハウカンファレンス 2004


Shibuya.pm主催のバッドノウハウカンファレンス2004が2004年5月14日に開催されるそうです。以前Shibuya Perl Mongers 1周年記念テクニカルトークに参加したのが非常に勉強になったし、刺激になったので今回も早速申し込みました。今から楽しみです。



2004年4月17日土曜日

堤幸彦のページ

堤幸彦のページ


TRICKやケイゾクの監督、堤幸彦さんのウェブログを見つけました。ってただそれだけ。。