ChaichanPapa-World !

燈明日記(2009/11

◆ インデックス

◆ 2009年11月

2009-11-30 よかった探しリース2009

今年も参加させて頂きます!

2002年から8年連続参加しています。もう古株ですね!

本コンテンツは、結城浩先生のページで毎年行われている企画『よかった探しリース』に参加しています。


◆よかった探し
  1. 今年も家族全員が無事に暮らせて、感謝です。
  2. 今年も不況の中、沢山の仕事が貰えて、感謝です。
  3. 長男は、ワンマンライブ大成功、感謝です。
  4. 次男は、大学生になって、かなり親離れ、親の方が子離れできない…、しかし、親離れは感謝です。
  5. 三男は、バスケットでブロック(三鷹、府中、武蔵野、狛江、調布)を席巻。都大会では、京北中に負けましたが、京北中は全国制覇…ということで、大活躍に、感謝です。

とにかく、毎日が普通に暮らせること・・・実は、すごく幸せなことなのだな・・・と思える今日この頃です。


◆ForMe / 小池啓仁

もしよろしければ、長男のForMe(作詞・作曲)を聴いてやってください!

とりあえず、プロを目指して頑張っています。みなさま、よろしくお願いします。

http://chaichan.lolipop.jp/mid/ForMe.mp4

2009-11-30 SQLiteを使ってみる!

実は、ActivePerl(私のは5.8.8)には、標準でDBが使えるようになっているのです!

そう、ActivePerlをインストールしただけで、標準でSQLiteがバンドルされているのです!

まさか、SQLが使えるDBが言語のパッケージに入っているとは思ってもいませんでした。

それは、以下を読んで知りました(いつも有用な記事ありがとうございます)。


折角なので練習がてらに、上記リンク先のサンプルを日本語化してみました。

とりあえず、上手く行きましたが…まぁ、とりあえずです(^^;

use strict;
use warnings;
use DBI;
use Encode qw(from_to);
use utf8;
#binmode STDOUT, ':encoding(shiftjis)';

# メモリ上のデータベースへ接続
#my $dbh = DBI->connect("dbi:SQLite:dbname=:memory:");
my $database = 'test.db';
my $data_source = "dbi:SQLite:dbname=$database";
my $dbh = DBI->connect($data_source);

my $create_table = 'create table books (' .
                       'タイトル,' .
                       '著者' .
                   ');';
$dbh->do($create_table);

# insert文の実行
$dbh->do(q/insert into books (タイトル, 著者) values ('Perl', '啓仁');/);
$dbh->do(q/insert into books (タイトル, 著者) values ('C++', '康友');/);
$dbh->do('insert into books (タイトル, 著者) values (\'Python\', \'ken\');');
$dbh->do('insert into books (タイトル, 著者) values (\'Java\', \'成憲\');');

# update文の実行
$dbh->do('update books set タイトル = \'Ruby\' where 著者 = \'成憲\'');

# delete文の実行
$dbh->do('delete from books where 著者 = \'ken\';');

# select文の実行
my $sth = $dbh->prepare("select * from books;");
$sth->execute;


# 各行のフェッチ
while (my @row = $sth->fetchrow_array) {
    # 各行を出力
    from_to($row[0], 'utf8', 'shiftjis');
    from_to($row[1], 'utf8', 'shiftjis');
    print $row[0], ":",  $row[1], "\n";
}


undef $sth;
# データベースの切断
$dbh->disconnect;

◆留意点

定石では、標準出力は『binmode STDOUT, ':encoding(shiftjis)';』でutf8からshiftjisに変換できるはずですが、なぜか上手く行かず…。

(追記:DBから読み込んだ文字列にはutf8フラグか付いておらず、『$row[1] = decode('utf8', $row[1]);』で付けることができます。こうすれば、『binmode STDOUT, ':encoding(shiftjis)';』で上手く行くようになります。またまた、kitsさんに教えて頂きました。いつもありがとうございます!)

今回は、from_toメソッドで対処しました。


また、データベース切断でワーニング『closing dbh with active statement handles』が出ましたので『undef $sth;』を入れてみました。

ワーニングはこれで消えたけど…これでも、リソースのリークが起こるかも…?

2009-11-29 とある先輩の死

実は、土日でとある先輩のお通夜と告別式の脇導師をさせ頂きました。

その先輩は、主に宿直でずっと一緒だった班長さんです。

身内でもなく、ただの知人でもない人の死に、不思議な気持ちになりました。


先輩とは、今年のはじめに先輩の長男さんへ仕事のホームページの作り方をアドバイスした時に会ったのが最後になりました。

お通夜と告別式では、悲しみのご家族の掛ける言葉もなく、木鉦を打ちつづけました。

なのでとりあえず、ここに書いておきます。


『亡くなった人への一番の供養は、自分自身がしっかり生きて、亡くなった人へ心配をさせないこと!』


しかし、実際、悲しみにくれるご家族に、言葉を掛けるのは、すごく難しいです…。

しかし、ここ2日間で一年分の木鉦を打った感じです。

陀羅尼の木鉦といい、今年は、凄く木鉦に縁がありますね!

2009-11-28 ライブ告知:12月22日千葉県本八幡ミュージシャンズバーB♭

長男:小池啓仁のバースデーライブが12月22日千葉県本八幡ミュージシャンズバーB♭であります。

彼も、もうすぐ24歳になってしまいます。


神さま、仏さま、早く彼をブレイクさせてやってください!

もしよろしかったら、千葉なので東京の人にはちょっと遠いけど、見に来てやってください!


ちなみに、ちゃいちゃんパパ一家は、総出です(^^;


12月22日(火)

場所 千葉県本八幡ミュージシャンズバーB♭

時間 20時から4時

この日は、僕のバースデーイベントがあります

バンドでの初ライブです

参加型のバーなので、遊びに来てくれたお客様も生音で歌うことができます

是非遊びにきてください

http://koikehirohito.blog7.fc2.com/blog-entry-186.html
◆ 本八幡ミュージシャンズバーB♭の地図


◆ For Me / 小池啓仁

2009-11-28 日本語の正体

アマゾンでは、あまり評判が良くありませんが、私には、大変面白く読めました。

確かに、ちょっと『?』のところもあり、韓国人目線のところもありますが…。


結論から言うと、今の日本語の正体は、百済語(くだらご)ということです。


縄文時代は、今の日本語とは別の日本語があったそうですが…弥生時代に朝鮮半島から百済人が来て百済語になってしまったそうです。

つまり、弥生人は、縄文人と百済人の混血で、文化的に優れていた百済語が今の日本語に変化していったようです。


一方、朝鮮半島では、百済が白村江(はくすきのえ)の戦いで、新羅(しらぎ)と唐(昔の中国)の連合軍によって滅亡してしまい。

朝鮮半島では、新羅語と古い中国語(北京語でない)が今の韓国語に変化していったようです。


そして、百済語と新羅語は、実は、ほぼ同じものとのことでした。

日本語は、百済語の読みを漢字に当てはめ、つまり万葉仮名のようにして漢字の訓読みを取り入れていきました。

一方、韓国語は、新羅語へ漢字の発音(古い中国語の発音)をそのまま取り入れ音読みのまま、今のハングルへと変化していきました。


つまり、日本語は、漢字を受け入れるときに、漢字の意味の百済語の言葉をその漢字の読みに当てたのです。

一方、韓国語は、漢字を受け入れるときに、当時の漢字の発音をそのまま新羅語の中に受け入れたのです。


ということで、日本語(百済語)と韓国語(新羅語)の元は、ほぼ同じものなのです。

確かに、ハングルを勉強したときに、めちゃくちゃ日本語に似ている部分があって驚いたことがありました。

日本語の正体―倭の大王は百済語で話す

日本語の正体―倭の大王は百済語で話す

2009-11-27 まずは一つ目の忘年会

今、新宿駅東口の駅前のスエヒロから帰ってきました。

そう、まずは一つ目の忘年会です。

スエヒロでは、しゃぶしゃぶ食べ放題のコースなのですが、ここ、凄い高級店で驚きました。

ということで、今日もう、お風呂にはいって体を温めてから寝ますね! おやすみなさい…また明日。

2009-11-26『朝夕のご供養』とは

某教会では、『朝夕のご供養』がすべての修行の基本です。

朝起きてからと、寝る前に法華経の抜粋を読誦します。


ご供養は、以下の順序で読誦します。


ちなみに、法華経抜粋は以下になります。


『朝夕のご供養』は朝夕で2回ですが、私の場合、実は寝る前の1回になっています。

寝る前に法華経を読誦しながら、その日を振り返り、今日一日無事に過ごせたことに感謝を祈るのです。


仏教の功徳は、現象が良い方向へ変わることと考えがちですが、実は、むしろ何も変わったことがないのが功徳である場合が多いのです。


ということで、今日も家族みな何ごともなく過ごせました。あぁ功徳功徳…。


そうそう、お経を読誦していると、子守唄と同じ効果あり、ご供養のあとすぐ寝付けることも功徳ですね!

いつも書いてますが、夕食後4時間は何も食べず、熱めのお風呂に入って、ご供養して寝る。

これ、立派な健康法になりまよ!みなさんも是非どうぞ!

2009-11-25 ファイルのMimeを判断する

ファイルがテキストファイルなのか、バイナリファイルなのか…判断したい場合、FindMimeFromDataが使えます。

FindMimeFromDataは、データを解析し、以下のMimeを判断できるようです。


◆FindMimeFromDataが返すMimeリスト
MIME TypeDescription
text/plainPlain text. Default if data is primarily text and no other type detected.
text/htmlHTML. Default if common tags detected and server does not supply image/* type.
text/xmlXML data. Default if data specifies
text/richtextRich Text Format (RTF).
text/scriptletMicrosoft Windows script component.
audio/x-aiffAudio Interchange File, Macintosh.
audio/basicAudio file, UNIX.
audio/midInternet Explorer 7 and later. MIDI sequence.
audio/wavPulse Code Modulation (PCM) Wave audio, Windows.
image/gifGraphics Interchange Format (GIF).
image/jpegJPEG image.
image/pjpegDefault type for JPEG images.
image/pngInternet Explorer 7 and later. Portable Network Graphics (PNG).
image/x-pngInternet Explorer 7 and later. Default type for PNG images.
image/tiffTagged Image File Format (TIFF) image.
image/bmpBitmap (BMP) image.
image/x-xbitmapRemoved from Internet Explorer 8.
image/x-jgAOL Johnson-Grace compressed file.
image/x-emfEnhanced Metafile (EMF).
image/x-wmfWindows Metafile Format (WMF).
video/aviAudio-Video Interleaved (AVI) file.
video/mpegMPEG stream file.
application/octet-streamBinary file. Default if data is primarily binary.
application/postscriptPostScript (.ai, .eps, or .ps) file.
application/base64Base64-encoded bytes.
application/macbinhex40BinHex for Macintosh.
application/pdfPortable Document Format (PDF).
application/xmlXML data. Must be server-supplied. See also "text/xml" type.
application/atom+xmlInternet Explorer 7 and later. Atom Syndication Format feed.
application/rss+xmlInternet Explorer 7 and later. Really Simple Syndication (RSS) feed.
application/x-compressedUNIX tar file, Gzipped.
application/x-zip-compressed Compressed archive file.
application/x-gzip-compressed Gzip compressed archive file.
application/javaJava applet.
application/x-msdownloadExecutable (.exe or .dll) file.
http://msdn.microsoft.com/en-us/library/ms775147(VS.85).aspx

◆サンプルソース
<DllImport("urlmon.dll", CharSet:=CharSet.Auto)> _
Private Function FindMimeFromData( _
    ByVal pBC As IntPtr, _
    <MarshalAs(UnmanagedType.LPWStr)> ByVal pwzUrl As String, _
    <MarshalAs(UnmanagedType.LPArray, ArraySubType:=UnmanagedType.I1, SizeParamIndex:=3)> ByVal pBuffer As Byte(), _
    ByVal cbSize As Integer, _
    <MarshalAs(UnmanagedType.LPWStr)> ByVal pwzMimeProposed As String, _
    ByVal dwMimeFlags As Integer, _
    ByRef ppwzMimeOut As IntPtr, _
    ByVal dwReserved As Integer) As Integer
End Function

Public Function getMimeFromFile(ByVal file As String) As String

    Dim mimeout As IntPtr

    If Not System.IO.File.Exists(file) Then
        Throw New FileNotFoundException()
    End If

    Dim MaxContent As Integer = CInt(New FileInfo(file).Length)

    If MaxContent > 256 Then MaxContent = 256

    Using fs As New FileStream(file, FileMode.Open)
        Dim buf(MaxContent) As Byte
        fs.Read(buf, 0, MaxContent)
        fs.Close()
        Dim result As Integer = FindMimeFromData(IntPtr.Zero, file, buf, MaxContent, Nothing, 0, mimeout, 0)
    End Using

    Dim mime As String = Marshal.PtrToStringUni(mimeout)

    Marshal.FreeCoTaskMem(mimeout)

    Return mime
End Function
http://dobon.net/cgi-bin/vbbbs/srch.cgi?PAGE=20&andor=and&logs=.%2Fvb%2Fvb.dat&no=0&word=intptr

◆補足
getMimeFromFile関数の引数へファイルパス名を指定します。リターン値は、MIME Typeです。
尚、マーシャル(Marshal)は、あるプログラムで利用されるデータ形式を、異なるプログラムで利用可能な形式に変換することです。
MarshalAsやMarshalでC言語のデータ形式をVBで利用可能に変換しているようです。

◆留意点
ご自分が使うシステムで念入りに検証してから適用した方が良いでしょう!

◆参考

2009-11-24 雑記

今日は宿直明けで、普段の生活のリズムが狂うので、調子悪かったです。

本当は毎日、宿直のように、5時起床、6時法華経読誦のリズムが良いのですが…在家仏教ではなかなか難しいですね。


年末は、忘年会の予定がすでに3つ、年末ジャンボの宝くじも発売されました。

今年も終わりに近づいて来ましたね。


最近、MS系のページを良く見るのですが、本当に分かり辛いし、なかなか欲しい情報に辿り着けない…。

辿りつけても英語のページしかなかったり、そのページをGoogle翻訳してもイマイチ意味不明だったりと…。


でもGoogleのページ翻訳は、昔に比べると大分改善されているような気がしました。

しかも、翻訳スピードが凄く早いですね。さすがGoogle! MSは消えて欲しい…


ということで、今日は、これにて、おやすみなさい!

2009-11-23 Perlでのファイルロックについて

Perlでのファイルロックでは、普通、flock関数を使用します。

flock関数の第1引数にはファイルハンドルを指定し、第2引数には以下のいずれかの値を指定します。

尚、 LOCK_SHやLOCK_EX等を使用する場合は、『use Fcntl ':flock';』宣言が必要です。



1は、本処理がファイルに対して他のプロセスの書込をロックし、本処理終了まで他のプロセスを待たせます。

2は、本処理がファイルに対して他のプロセスの書込読込をロックし、本処理終了まで他のプロセスを待たせます。

5は、本処理がファイルに対して他のプロセスの書込をロックし、他のプロセスは即時復帰(リターン値0)する。

6は、本処理がファイルに対して他のプロセスの書込読込をロックし、他のプロセスは即時復帰(リターン値0)する。


尚、本ロック処理は、同ファイルに対してflock関数を使っているプロセス同士で有効で、flock関数を使っていないプロセスでは無効です。このようなロックをアドバイザリーロックと呼ぶらしい…。


◆ 2のサンプル
use strict;
use warnings;
use Fcntl ':flock';

my $counter_file = 'counter.dat';

open my $fh, '+<', $counter_file or die "$!:($counter_file)"; 
flock $fh, LOCK_EX;      # 排他ロックをかける
print "---ロック中---\n";# デバック文
my $counter = <$fh>;     # カウント値を読み込む
$counter++;              # カウントアップ
seek $fh, 0, 0;          # 書き込み位置をファイルの先頭に移動
print $fh $counter;      # カウント値を書き込む
sleep 5;                 # デバックで5秒待つ
close $fh;               # 排他ロックの解除する

◆ 5のサンプル
use strict;
use warnings;
use Fcntl ':flock';

my $retry = 3; # リトライ回数(3回)
my $wait = 1;  # リトライ時間(1分)

my $counter_file = 'counter.dat';

open my $fh, '+<', $counter_file or die "$!:($counter_file)";

my $locked = 0; # 1でロックオン
for (my $i = 0; $i < $retry; $i++) {
  if (flock $fh, LOCK_EX|LOCK_NB) {
    print "---ロック中---\n";
    $locked = 1;
    last;
  }
  sleep $wait;
}
if ($locked != 1) {
   die '他のプロセスがロック中で処理できず!';
}

my $counter = <$fh>;
$counter++;
seek $fh, 0, 0;
print $fh $counter;
sleep 4; # テストSleep
close $fh;

2009-11-22 天地人の最終回に思う

今日でNHKの『天地人』が終わってしまいました。

戦国時代の真実がわかったような気がしました。


歴史は、時の権力者が作ると言いますが、今回は権力者目線でない物語りになっていて、今までの信長、秀吉、家康のイメージが覆りましたね。

そして、石田三成の義を江戸城で説く直江兼続のくだりに、この物語のすべてが集約されてたような気がしました。


ということで、前回の『篤姫』から連続して2年もNHKの大河ドラマを見てしまいました。

3年目の福山雅治の坂本竜馬は、どうなりますかね…。少し楽しみです。


坂本竜馬と言えば、TBSの『JIN-仁-』は、相変わらず面白いですね。

こちらは、まだまだ続くようで、まだまだ毎週日曜日が楽しみです。

2009-11-22 礼と握手

オバマ大統領が天皇陛下に礼をしながら握手したことが、アメリカの一部のマスコミで非難されていますね。

礼と握手の起源は、ともに相手に対して敵意がないことを示す行為とのことです。

礼は、主に東洋で、相手に頭を見せることにより、攻撃する意思がないことを示すのが起源とのことです。

握手は、主に西洋で、手に武器を持っていないことを示すのが起源とのことです。


ちなみに、仏教での礼とは、どんな人でも必ず仏性を持っていて、相手の仏性を拝むことをいいます。

2009-11-22 ファイルのサイズを変更するtruncate

SQLでは、ロールバック無しにデータを削除するtruncateがありますが、Perlでもデータを削除してファイルのサイズを変更するtruncate関数があります。

truncate関数は、ファイルハンドルだけでなくファイル名指定でもサイズ変更が出来ます。

とりあえず、サンプルです。


◆サンプル
use strict;
use warnings;

#ファイル作成
open my $fh, '>', 'test.txt' or die "error $!\n";
print $fh '12345678901234567890';
close $fh;

#ファイルの内容を読み込む
open $fh, '<', 'test.txt' or die "error $!\n";
my $data = <$fh>;
print $data, "\n";
close $fh;

#ファイルサイズを求める
my @file_info = stat("test.txt");
print "ファイルサイズ : $file_info[7]\n";

# truncateにファイルハンドルを使用する
open $fh, '+<', 'test.txt' or die "error $!\n";
truncate($fh, 12); # ファイルサイズを12バイトにする
$data = <$fh>;
print $data, "\n";
close $fh;

#truncate後のファイルサイズを求める
@file_info = stat("test.txt");
print "truncate後のファイルサイズ : $file_info[7]\n";

# truncateにファイル名を使用する
truncate('test.txt', 0); # ファイルサイズを0バイト(空)にする
@file_info = stat('test.txt');
print "再度truncate後のファイルサイズ : $file_info[7]\n";

◆実行結果
C:\perltest>perl truncat.pl
12345678901234567890
ファイルサイズ : 20
123456789012
truncate後のファイルサイズ : 12
再度truncate後のファイルサイズ : 0

ファイルを空(サイズゼロ)にするには、open関数でもできますが、truncate関数の方が明示的で良いですね!

2009-11-21 Visual Studio のシステム要件

もうVS2010がリリースされる直前ですが、とりあえず、VS2008とVS2005のシステム要件です。

VS2008からWIN2000は対象外になっていますね。

今回、MSのサイトを色々探索しましたが…ラビリンスで情報に辿り着けなく、アクセスが遅く、ブラウザストールなど…散々でした。

これじゃ、Googleと勝負になりませんね!

2009-11-21 ママと一緒に霊園奉仕!

今日は、ママと2人で佼成霊園(西武拝島線玉川上水)の霊園当番(奉仕)に参加してきました。

この間だ買った新車(コンテ)での、はじめてのちょっとした遠出でした。


2人と言いましたが、実は、他の信者さん1人を乗せて3人で行きました。

霊園当番は、お互いに何回も参加していますが、意外にもママと一緒では、はじめてでした。


霊園当番は、奉仕がメインですが、実はちゃいちゃんのお墓参りがモアメインなのです。

そう、今日は、霊園当番でママと一緒でのお墓参りができたのです。


お墓参りも霊園奉仕も2人して結構沢山しているのに、はじめての組み合わせだったことに、ちょっと驚きました。

私の今回担当は、御墓所のお役で、霊園のご宝前で法華経を読誦することができました。


霊園のご宝前は、音響が凄く響く空間になっていて、ここで法華経読誦をしていると、この世ではない錯覚をおぼえました。

響きが、めちゃくちゃ気持ちいいのですよ!!


また、なぜか急に法事会場でも、年回供養のご家族の人たちの前で法華経読誦をすることなりました。

法華経読誦をしている中、亡くなった人への一番の供養は、なにかなぁ…って考えていました…


…やはり、自分がしっかり生きて、亡くなった人へ心配をかけないことに尽きるのかなって…改めて心に思いました

よれよれなパパですが、少しはしっかり生きないと… ちゃいちゃん応援してね! あっ、パパよりママをね……。

そうそう、霊園当番の最後には、いつも霊園長さんのお言葉をもらえるのですが、今回は、都合がわるく、代わりの人からお言葉をもらいました。その人も急に頼まれたみたいで…ちょっと困り顔でしたが、以下のような有り難いお言葉を頂きました…


…年回供養のご家族の人たちは、年回供養が法事会場で終わるとお墓参りに行ってからお清めに行くのですが…。

普通、終わってからは事務所には挨拶にきません。しかし、今回に限っては、沢山の人が事務所へ『ありがとうございます!』と訪れてくれたとのことでした。

これは、今回の人たちの奉仕が如何に素晴らしかったかの証しですね…とのことでした!


これを聞いて、一日の奉仕での疲れがとれた気持ちになりました。

やはり、感謝の気持ちは、エネルギーなのですね!

2009-11-20 デフレのキーワードでアクセス300以上!!

昨日から、デフレのキーワードで300以上のアクセスあります!

これは、以下のニュースが原因ですね。

で、ヒットしている本ブログの記事は以下のようです。

2009-11-20 縄文時代や弥生時代の人は、どこから来たのだろうか…?

縄文時代が1万年以上も続いていたって、知っていましたか!

弥生時代は約600年と1万年に比べたら凄く短いですね。西暦でも2008年ですからね。


今日、面白そうな本をみつけました。

これ、縄文時代や弥生時代から日本語の正体を探っていくみたいです…。


数学ガール/ゲーデルの不完全性定理』は、すこし難しくなってきたので後に回して、先にこちらを読むことにしました。

数学ガール/ゲーデルの不完全性定理』も『日本語の正体―倭の大王は百済語で話す』も、ちゃんと読み終わったら感想文をアップしたいと思います。

2009-11-20 VBスクリプト(VBS)ファイルをエグゼ(EXE)ファイルする!

前回も書きましたが、VBScriptは、メモ帳などのエディタでソースが丸見えなので修正が簡単に出来て良いですね。

しかし、お客さま等には、見せたくない場合もありますね。


そんな時は、WINDOWS標準バンドルのiexpressを使うとEXEファイルにすることができます。

以下は、その手順です。


◆ VBSファイルをEXEファイルにする手順

手順では、仮にtest.vbsをtest.exe にしています。

  1. スタートボタンから『ファイル名を指定して実行』でiexpressを実行する。
    実行後は、プログラムの指示に以下のように従う。
  2. Create new SelfExtrection Directive fileを指定後『次へ』を押す。
  3. Extract files and run an installation commandを指定後『次へ』を押す。
  4. package titleを任意入力後『次へ』を押す。
  5. No promptを指定後『次へ』を押す。
  6. Do not display a licenseを指定後『次へ』を押す。
  7. Packaged filesでtest.vbsをAddして『次へ』を押す。
  8. Installer Programに『WSCRIPT test.vbs』を指定後『次へ』を押す。
  9. Default(recommandeed) を指定後『次へ』を押す。
  10. No messageを指定後『次へ』を押す。
  11. Package Nameを任意入力後『次へ』を押す。(今回はtestと入力)
  12. No rebootを指定後『次へ』を押す。
  13. Don't save を指定後『次へ』を押す。
  14. Create packageは『次へ』を押す。
  15. 最後に『完了』を押す。
  16. test.exeは、ホームディレクトリに作成されるようです。

結構、入力が続きますが…そんに難しくないですよ!

2009-11-19 雑記

この間も書きましたが、人生の回転が速くなっている感じです。

また、新しい仕事が舞い込んできて、後輩にやってもらう手配になって、今日は、今までレクチャーをしてきました。


今、『数学ガール/ゲーデルの不完全性定理』を読んでいるんですが、前半は理解できました!!凄い?

後半は、さすがにラビリンス…。

『僕』が、学年上位ランキング外になって、テトラちゃんに負けたぐらいから、わかんなくなってきました…。


ネタは、まだまだ沢山ありますので、時間が許す限り、ガンガン更新していく所存です!

ということで、レクチャーのあと、みんなで一杯飲んできたので、今は酔っ払っています。

ということで、これからお風呂に入って体を良く温めてから、即、寝ます。

では、今日はこの辺で!

2009-11-18 アンドロイド携帯天下統一前夜

前夜といっても1年以上はかかると思いますが…。

今日、アンドロイドについて2つの気になるニュースがありました。


アンドロイド携帯が日本のガラパゴス携帯とアップルのiPhoneを駆逐する日が来るのでしょうか…

たぶん、来るのでしょう!

2009-11-18 VBScriptを暗号化する!

VBScriptは、メモ帳などのエディタでソースが丸見えです。

まぁ、見せたくない場合もありますね。

そんな場合は、マイクロソフトからフリーのスクリプト暗号化のプログラムがリリースされています。

まず、これをダウンロードして、インストールして、以下のようなコマンドを入力します。

C:\Program Files\Windows Script Encoder> screnc test01.vbs test01.vbe 

上記は、test01.vbsを暗号化してtest01.vbeにしています。


2009-11-17 配列の要素をユニークにする!

Linuxのuniqコマンドみたいに配列変数の要素をユニークにしたい場合があります。

しかし、標準関数には残念ながら…そのような関数はありません。

またしかし、柔軟なPerlでは、ちょっと工夫すると既存の関数で出来てしまうのです。


◆サンプル
use strict;
use warnings;

my @data = ('AAA', 'BBB', 'CCC', 'BBB', 'DDD', 'AAA', 'DDD', 'EEE');

my @uniq = do { my %wk; grep { !$wk{$_}++ } @data };

local $, = ',';
print @uniq;

◆解説

今回、grep関数で配列を検索して、初回マッチでは『$wk{$_}++ 』は++する前なのでゼロで『偽』となり、それを『!』で否定しているので『真』となり、その値を返します。

つぎに、do関数では、最後に評価した式の値を返しますので、それをリストコンテキストで@uniqへ返します。

初回以外でマッチする(つまり同じ値の要素の)時は、すでに++で1になっているので『真』となり、それを『!』で否定しているので『偽』となり、その値をかえしません。


よって、結果的に@uniqはユニークな要素が格納されるわけです。


◆参考
◆補足

『undefと''が同一視される問題あり。List::MoreUtils 0.25_02 のuniqでは対処』

(kitsさんより、教えて頂きました。いつも、ありがとうございます!)

(私の環境では、VERSION = '0.22'だったので、まだ、同一視しているようです…)

2009-11-17 季節はずれの花粉症?

ここ2、3日、軽い頭痛や熱っぽいと思っていたら、今日、クシャミがとまらなくなり、春先のスギ花粉と同じ症状だということに気がつきました。

ネットで検索すると以下が引っ掛かりました。

Q17.

花粉の季節でなくても花粉症の症状がでることがありますか。   スギ・ヒノキ花粉症では2月から5月以外に10月から11月にごく少量の飛散があって軽い症状が出ることがあります。イネ科の花粉症は6月から8月、ブタクサの花粉症では8月から10月に症状が出ますが、そのほかの季節で鼻の症状が出るときには花粉症以外の鼻炎も考えられます。

http://www.mhlw.go.jp/new-info/kobetu/kenkou/ryumachi/kafun/ippan-qa.html

やはり、スギ花粉が飛んでいるんですね!

ということで、インフルエンザでないので一安心です。

2009-11-16 日本人に生まれてよかった〜!

職場でまた新型インフルエンザの人がでました。

再び全員マスク状態に戻りました。


今日、『5歳以下が急増』のニュースがありました。

ここには、日本での新型インフルエンザの死亡数が42人と出ていますね。

11月1日〜13日での死者は18人です。


つい先日、『アメリカでの死亡数が3600人』というニュースがありました。

また、10月末には1000人というニュースがあり、半月に2600人も亡くなってしまったのですね!アメリカは!!


つまり、18:2600です!

これ、どういうわけでしょうか?


まさか、『タミフルの全世界での使用量のうちおよそ75%を日本での使用が占めており』が影響しているのでしょうか…。

まぁ、とにかく、日本人に生まれてよかったってことですかね!


新型インフルエンザではないけれど、急に寒くなったので、調子を崩している人が沢山いると思います。

実は、私も少し頭痛がして、熱っぽいのです。


しかし、職場では、非接触型体温計で体温を計らなくてはならず、熱があると思って計っても35度台なのです。

どういうこと?


あ、そうそう、非接触型体温計なんだけど、これ職場のみなさんが、一つの非接触型体温計を自分で持って計るのだけれど…つまり、各自接触して計るわけです。非接触型の意味ないじゃん!!


ということで、調子が悪いので今日は、お風呂に入って体をよーく温めてから、即、寝ます。

今は、なにかと仕事が増えて(有り難い)、病気でダウンしている場合じゃないのですよ!


みなさまも、寒くなってきたのでインフルエンザや風邪など引かぬようご注意ください!

2009-11-15 プレゼンのコツ By 池上流

この間だ読んだ『わかりやすく<伝える>技術』にプレゼンのコツが書いてありましたのでメモしときます。

リードとは、説明するにあたって、わかりやすい地図を相手に渡すようなことを言います(実際の地図を渡すわけではありません)。

そして、パワーポイントを作るために原稿を書いて、パワーポイントを書いた後に、その原稿をパワーポイントにそって書き直す!


また、一つのパワーポイントには、説明する要約を3つの箇条書きで明示し、決して細かく色々沢山書かないこと!

説明は、原稿を棒読みすることなく、視聴者を見て、たまに「原稿の箇条書きメモ」見て、説明すること!


参考:わかりやすく〈伝える〉技術 (講談社現代新書)

2009-11-15 Android携帯がiPhoneに優る10の理由

一日で充電がなくなる古いau携帯を使っている私が、Android携帯をお薦めできるわけではありませんが…。

面白い記事があったのでご紹介します。

  1. ブラウジング
  2. デスクトップ
  3. 接続性
  4. PCとの接続
  5. 複数のアプリケーションからの通知
  6. 無限のパーソナライズ
  7. Android Market
  8. Googleの統合
  9. オープンソース
  10. 通信キャリアが限定されていない

iPhoneは元々iPodで音楽を聴くためのものが進化してきたものですね。

Androidは、キャリア各社のガチガチな規格でなく、オープン規格でネットをするためのGoogleワールド実現の布石です。

Androidでは、電話も音楽もメインでなく、ネットがメインですね。


日本でもAndroid携帯が沢山出てきて欲しいです。

私の古いau携帯の電源が、一日もたなくなる前に…。

2009-11-14 ストレスから身を守る!

私たち人間の体は、「交感神経」と「副交感神経」という2つの自律神経が交互に体を支配することでバランスをとっています。

「交感神経」が体を支配しているのは、主に働いている時やアグレッシップな時です。

「副交感神経」が体を支配しているのは、主に寝ている時やリラックスしている時です。


自律神経には、バイ菌やウイルスなど外部からの侵入を守る「免疫系」と細胞のダメージを回復させる「ホルモン系」の2つがあります。

自律神経のバランスが崩れると、血液の流れが悪くなり血流障害から低体温になります。

また、ホルモンのバランスが崩れると、細胞の回復が遅くなり細胞自体のエネルギーが低下して低体温になります。


逆に言うと、低体温は、自律神経やホルモンのバランスが崩れている状態の可能性が高いのです。

このように「免疫系」と「ホルモン系」、2つの機能が上手く働くことで、私たちの体はさまざまなストレスから身を守っているのです。


ということで、逆の逆に言うと、低体温から脱すれば、私たちの体はさまざまなストレスから身を守れるのです!

ちなみに、低体温から脱する方法は以下にあります。


2009-11-14 ブログを書くために生きる!

長年、ウェブ日記やブログを書いていると、このことのために生きていると錯覚することがあります。

いや、もしかしたら、錯覚ではなく事実なのかもしれません……。


毎朝、起きる時は、辛いものです。

そんな時は、昨日書いた記事にコメントが貰えているかな…とか思うと、あっさり起きられるのです。


そして、通勤中は、今晩はどんなネタを書こうかな…なんて思いながら会社へ向かうわけです。

また、仕事中に分からないことがあると、過去に自分に教えてもらいます。


実は、ウェブ日記として5年、ブログとして5年、計10年間をプログラマ&ウェブネタを書き続けてきたので、大体は、過去ログに書いてあるのです。

なので過去に自分に教えてもらえるのです。


そして、仕事や同僚との会話で面白と思ったことをネタ帳にメモして、帰りの電車の中で、今日書くブログの構想を練るわけです。


…と、こんなわけで、結果的にブログ(ウェブ日記)を書くために生きていることに、最近気がつきました(おぉ10年も掛かったか!)。

これって、ある意味、生きがいですかね!


皆さん!! これからも、『燈明日記』をよろしくお願いいたします!!

2009-11-14 Perlでのファイル処理について

Perlでのファイル処理は、以下の感じです。


◆組み込み関数によるオープン・リード・ライト・クローズ

すごく良い記事があったので引用させて頂きます(^^;

ファイルハンドルにはレキシカル変数を使うこと (本当に特別な用途がない限りは必須)

 ファイルハンドルには宣言したばかりのレキシカル変数を使います。レキシカル変数を宣言してそれをopen関数の第1引数に指定するとレキシカル変数にファイルハンドルが設定されます。

# レキシカル変数
my $fh;
my $file = 'file1';

open $fh, '<', $file
  or die "Cannot open '$file': $!";

while (my $lien = <$fh>) {
    # 行の読み込み
}

 レキシカル変数はスコープを持つということと他の関数に引数として渡すことができるという大きな利点があります。古い解説にあるようなFHや*FHなどのシンボルを使わないようにします。

 またレキシカル変数の宣言をopen関数の中にまとめてしまうのがより現代的であるといえるでしょう。

open my $fh, '<', $file

3引数のopen関数を使う (必須)

 3引数のopen関数を使用するようにします。

open my $fh, '<', $file

 古い解説では2引数のopen関数を解説しているものがありますが使わないようにしましょう。2引数のopen関数はセキュリティ的に脆いので使用してはいけません。

open my $fh, "< $file"; # 2引数のopen関数を使用してはいけない

ファイルオープン時のエラー処理を行う (必須)

 ファイルオープンを行ったときは必ずエラー処理を行うようにします。

open my $fh, '<', $file
  or die "Cannot open '$file': $!";

 open関数は失敗するとundefを返すのでorを使ってエラー処理を行います。$!にはOSが返したエラーメッセージが含まれているのでユーザに見せるエラーメッセージに含めるようにします。

 プログラムをエラーメッセージを表示して終了させるにはdie関数を使用します。他のプログラムから見た場合は終了コードは255になります。

 ファイルオープンに限らずプログラムの外部と通信する場合はかならずエラー処理を行うようにします。外部というのはメモリの操作を除くすべてです。ファイルやネットワークなどが外部になります。

http://d.hatena.ne.jp/perlcodesample/20091120/1246679588

尚、openの第二引数には以下があります。


・参考リンク
http://blog.livedoor.jp/dankogai/archives/51176081.html

◆FileHandleモジュールによるオープン・リード・ライト・クローズ

以下を参照願います。


◆ファイルテスト演算子によるファイル存在チェックやファイルサイズの取得等

以下を参照願います。


◆ファイル操作関数によるファイル削除や名前変更等
・ファイル削除のunlink

unlink 'ファイル名1', 'ファイル名2', ……;

my $c = unlink 'zzz.txt', 'yyy.txt';
print "-->$c<--\n";

引数には、削除するファイル名のリストを指定します。

戻り値は削除したファイルの数が返ります。


・名前変更のrename

rename '古いファイル名', '新しいファイル名';

if (rename 'xxx.txt', 'zzz.txt') {
    print "真\n";
}
else {
    print "偽\n";
}

戻り値は、リネーム成功時に真、それ以外は偽。


・その他のファイル操作関数

2009-11-13 httpの替わりのSPDYとJavaScriptの替わりのGo言語

今日、Googleの気になるニュースが2つありました。

ついに、Googleワールド実現への切り札を出してきましたね!

アクセススピードゆえに既存のブラウザのJavaScriptを変えてしまおういう発想が、まずすごい!!

アクセススピードゆえに既存のウェブのhttpを変えてしまおういう発想が、とんでもなくすごい!!


この2つが成功したら、ChromeブラウザとChromeOS、そしてAndroidで、ネット&OS&携帯を天下統一ですね!

遅くて重いOSが入れる余地はありません。M系は自然淘汰されますね。

まさにGoogleの天下です!


ちなみに、Go言語は、ブラウザ内で動くだけでなく、汎用言語にもなっています。

2009-11-12 『様』という言葉の力

一ヶ月前にメールのTo:に書く宛て名を『殿』から『様』へ変更したことを書きました。

毎日、『様』でメールを書いていると、相手を敬う気持ちが『殿』の比ではないのです。

『様』という言葉は、やはり神様、仏様、お客様の『様』で、目に見えない力があるようです。

2009-11-12 ワードやエクセルでリンク先から戻るには?

IE等のブラウザでは、リンク先に飛んでから、元に戻るには『戻る』ボタンがあります。

では、『戻る』ボタンのないワードやエクセルではどうやってもどるのでしょうか…。


実は、知っているはずなのに、しばらくすると、知らなくなってしまうのです(もうボケ老人か)。

なので、再度メモしときます。



参考リンク

実は、EXCELには、デフォルトにはなっていませんが、『戻る』ボタンのあるツールバーがあります。

これでも、当然、戻せますね。

2009-11-11 雑記

今日は、水曜日なので残業なし日。早く帰って来てブログ更新放題状態です(^^;

昨日、心配していたプレゼンは、なんとかまぁまぁ上手くいけました(ほ)。

しかし、プレゼンのデモ直前まで、Nothingと空文字で、はまってしまって結構焦りました。


小沢先生は『仏教はあらゆるものを受け入れ、みんな仏になれるという度量の大きい宗教だ』とコメントしました。

これ、仏教というより『法華経』そのものですね。

でも、政治家としては、一神教に対しての配慮が足らなかったような気がします。

一神教の人たちは、手強いですから…。

2009-11-11 VB2005では、Nothingと空文字列がイコール!

実は、2年以上も前に、同じようにはまっていました…。

VB.NETでの空文字列("")は、EmptyやNothingとイコールか?

とりあえす、If文では、すべてイコールです。

http://d.hatena.ne.jp/chaichanPaPa/20070223/1172232818

そう、Nothingと空文字列は、VB2005では、イコールなのです。


また、文字列変数にNothingが入っているケースにも遭遇しました。

通常、Nothingは、オブジェクト変数に使いますが、文字列変数にNothingを代入すると既定値(空文字列)なるはずが…ウォッチウィンドウで見たらNothingだったのです。

2009-11-11「キリスト教は排他的」民主・小沢氏、仏教会会長に

今日、以下のニュースがありました。

「キリスト教もイスラム教も排他的だ。排他的なキリスト教を背景とした文明は、欧米社会の行き詰まっている姿そのものだ。その点、仏教はあらゆるものを受け入れ、みんな仏になれるという度量の大きい宗教だ」

http://headlines.yahoo.co.jp/hl?a=20091110-00001243-yom-pol

これ、仏教者の本音です。

一神教というコンセプトそのものが、排他的なんですよね…。

これ以上は、ノーコメントです。

2009-11-11 国民1人当たり約678万円の借金?

今日、以下のニュースがありました。

財務省は10日、国債や借入金などの国の債務残高(借金)が9月末時点で864兆5226億円になったと発表した。前回公表時の6月末から4兆2669億円増加し、過去最大を更新した。10月1日時点の人口で割ると、国民1人当たり約678万円の借金を背負っている計算になる。

http://sankei.jp.msn.com/economy/finance/091110/fnc0911102203030-n1.htm

これ、借金じゃなくて、貸金なのですよ!

債務でなく、債権なのですよ!!


国債は、機関投資家、つまり主に銀行や保険会社が買うわけです。

銀行や保険会社が国債を買うお金は、実は、国民の貯金や国民が払っている保険料なのです。


つまり、間接的に国民が国にお金を貸しているのです!

決して借金ではなく、真逆の貸金なのですよ!

つまり、国民1人当たり約678万円を国へ貸しているのです!!


なんで、わざと国民を不安にするような報道をするのでしょうか(陰謀か)?

2009-11-10 多忙

仕事の方が、計4つのシステムをこなさないとならなくなり、今、その内2つに、せっつかれている……。

ブログの方は、ネタはあるけど、練る時間ありません。

ということで、今日は、もうお風呂に入って寝ます。


そういえば、お風呂に入って体を温めてから寝ると、体温が上がり、身体に良いそうです。

また、寝る前4時間は、間食をしないのが、やはり、身体に良いそうです。

みなさんも、お体を大切に!


神様、明日のプレゼン、上手く行きますように…(あっ仏教徒だから仏様かな…)。

2009-11-09 ActivePerlのライセンス

私の場合、WINDOWSでのPerlは、ActivePerl5.8.8を使っています。

つい最近まで、フリーソフトウェアのライセンスだと思っていましたが、ちょっと違うらしい…。


しかし、『このパッケージは、無償で商用または非商用の目的で使うことができる』は、確かなようです。

ActivePerl Community License v2.1

1. You may use this Package for commercial or non-commercial purposes

without charge.


参考:

しかし、フリー系のライセンスもいろいろな種類があって、よくわからないですね…。

2009-11-08 運命の歯車の回転が速くなってきた!

ここのところ、私生活では、自動車を買い換えたり、生命保険を見直したり、電話契約やケーブルテレビ契約を替えたりと…

仕事では、新旧2つの仕事を抱えているところに、新たに2つの仕事の調整役になってしまったりと…


契約書にやたらサインしたり、仕事の会議がバッティングするほど増えたりと…変化の多い日が続いています。

なんか、運命の歯車の回転が速くなってきた感じです。


ここのところ、陀羅尼(ダラニ)の木鉦の練習で、復活している法華経読誦(朝夕のご供養)の功徳かぁ…なんて思ったり…。

陀羅尼の功徳って、本当にあるのですかね……。

2009-11-08 Perlでの日本語処理について

えーと、Perlでの日本語処理は、結論から言うと、今の時代、以下の感じです。

私の主戦場はWINDOWSなので、それ系の過去ログを紹介して、今回はお茶をにごします。

しかし、結構、日本語処理について書いていますね!過去の自分……。

2009-11-08 相対的貧困率と絶対的貧困率

先月(2009年10月20日)、日本の相対的貧困率が15.7%でワースト4になったニュースがありました。

そもそも相対的貧困率とは、『国民一人一人の所得(等価可処分所得)を順に並べて真ん中の額(中央値)を割り出し、その額の半額に満たない人の割合がどのくらいかを示す。』

つまり、相対的貧困率が高くなることは、ますます格差社会になることなのですね。


実は、2005年時点では、15.3%でワースト5でした、つまり4年で一つランクアップしたわけです。

以下に2005年での日刊ゲンダイの記事の格差(階級)社会の引用がありましたので引用します(大元の記事は保存期限が過ぎている)。

日本で確実に進行中 階級社会の恐怖(gendai.net)


日本で確実に進行中 階級社会の恐怖

 ひとたび貧乏になったら、その子供はもちろん子々孫々まで貧乏から抜け出せない――日本は今、そんな「階級社会」に突入しようとしている。本屋に行けば「不平等社会日本」「日本の不平等」「しのびよるネオ階級社会」といったタイトルの本が並んでいる。「昔から貧富の差はあったし、オレはそこそこの収入がある“中流”だから大丈夫」なんてタカをくくっていると大変なことになるぞ。

 前述の「しのびよるネオ階級社会」の著者で、階級社会が今も続く英国で長くジャーナリストをしていた作家の林信吾氏がこう言う。

 「日本でも成果主義の導入で親世代の収入格差が拡大し、それが子供世代の教育格差につながり、その格差が世代を超えて固定化しつつある。言い換えれば、特定の階層が“おいしい仕事”を世襲的に独占する社会になりつつあるのです」

 かつて士農工商や自作農・小作農といった“階級”があったが、平等とされてきたサラリーマンの間で「ネオ階級社会」が形成されつつあるというのだ。

 確かにそれを裏付ける統計がある。昨年末に発表された経済開発協力機構のリポートによると、日本では1世帯あたりの平均所得(476万円)の半分以下しか稼げない貧困世帯が15%を超え、この10年で2倍近くに膨らんだという。日本の貧困率はメキシコ、アメリカ、トルコ、アイルランドに次いで5位。

一方、国税庁の調査では年収2000万円以上のサラリーマンは10年間で2万人も増えた。所得格差は確実に広がっているのだ。

 こうした所得格差を世代を超えて固定化させるのが「教育格差」だ。

 「これからの日本企業が求める人材は(1)経済のグローバル化に対応できる少数エリート(2)専門分野に通じたスペシャリスト(3)低賃金で雇える多くの労働者の3種類です。文部科学省が打ち出した公立学校の“ゆとり教育”を見ると、国はそんな企業のニーズに応えるために少数の“優秀な人材”と大勢の“元気のいいバカ”を作り出そうとしているとしか思えません」(林信吾氏=前出)

 公立学校でトップクラスの生徒が受験のために予備校や塾に行くと、偏差値は30台、40台でしかない現実がある。

 「都会の金持ち層の子供は有名大学進学に有利な中高一貫校を目指す傾向にあります。社会に出て高収入を稼げる有名大出身者の多くは富裕層の子供が占めることになる。実際、東大合格者の7〜8割の親が年収1000万円以上というデータもあります」(大手予備校関係者)

 かつてはたとえ貧乏人の子供でも、公立学校で刻苦勉励すればいい大学に進んで立身出世も望めた。だが、これからの日本では、私立に通える裕福な家庭の子供でなければロクな大学に入れないというのだ。

 だとすると、親としていま何をすべきなのか。

 「私立に通わせるカネがなければ、子供の尻をたたいてでもシッカリ勉強させることです。特にコンピューターと語学はエリート階級に入るのに必須です」(林信吾氏=前出)

 奥さんをパートに出してでも塾に通わせるか、あなたが平日の夜や土日に勉強を見てやるか。子供の自主性に任せるなんてのんびり構えている場合ではない。子供がフリーターやニートになったら、即おしまいだ。【2005年8月30日掲載記事】

[gendai.net 2005年9月2日10時0分 ]

http://news.www.infoseek.co.jp/society/story.html?q=02gendainet05116151&cat=30
http://ratio.sakura.ne.jp/archives/2005/09/02111956/

2005年の記事、2010年になろうしている今、まさにそうなってきていますね!

  1. 経済のグローバル化に対応できる少数エリート
  2. 専門分野に通じたスペシャリスト
  3. 低賃金で雇える多くの労働者

しかし、相対的貧困率でなく、絶対的貧困率というのがあります。

絶対的貧困率は、『1日の所得が1米ドル以下に満たない国民の割合の事』です。

今、1ドルは約90円、月収3000円に満たない国民の割合です。

絶対的貧困率でいえば、日本は超裕福な国なのですね!


◆まとめ

2009-11-07 さらば! セレナ!

13年間乗ったセレナに今日お別れをしました。

雨の日も風の日もそして雪の日も、車検以外は何一つしなかったのに、故障一つしなかったセレナちゃん…。

本当によく頑張ってくれました。


最後の最後にディーラーの人が乗って去っていく姿に、込み上げてくるものがありました…。

本当に13年間、ありがとうございました!


そして、コンテ君、こんにちは!!

今度は君が、ちゃいちゃんファミリーを運ぶお手配になりました!

よろしくお願いいたします。

セレナちゃんのように故障一つしない車であって欲しい…。


しかし、このコンテ君、すごい!!

コンテ君に近づくだけでロックが自動解除され、離れると自動ロックされる。

電子キーをポケットにいれていれば、キーを挿す必要がない…。


ガソリンも2000円でほぼ満タンになるし…これからは軽自動車の時代ですね!

しかし、軽自動車でも、お値段が高くなりました。

これから5年間、ローンに苦しめられそうです。


ボンビーだけどノーローンだけがとりえだったのに、ついにローンを背負ってしまいました(^^;

2009-11-07 CGIでHTMLを吐き出す時に任意のテキストボックスにカーソルを持っていくには

Perl等のCGIで、テキストボックスの入力値チェック(DBと比較とか)をした後、エラーのあるテキストボックスにカーソルを持っていきたい場合があります。

そのような時は、以下のように、CGIでbody要素にonLoad属性を設定すれば、いけますね。


<html> 
    <head> 
        <meta http-equiv="content-type" content="text/html; charset=shift_jis"> 
        <meta http-equiv="content-script-type" content="text/javascript"> 
        <title>テスト</title> 
    </head> 
    <body onLoad='document.F01.I03.focus()'> 
        <form action="." name="F01"> 
            <p><input type="text" name="I01"></p> 
            <p><input type="text" name="I02"></p> 
            <p><input type="text" name="I03"></p> 
        </form> 
    </body> 
</html> 

尚、DOMを使うと以下の感じ

<html> 
    <head> 
        <meta http-equiv="content-type" content="text/html; charset=shift_jis"> 
        <meta http-equiv="content-script-type" content="text/javascript"> 
        <title>テスト</title> 
    </head> 
    <body onLoad='document.getElementById("ID02").focus()'> 
        <form action="." name="F01"> 
            <p><input type="text" name="I01"  id="ID01"></p> 
            <p><input type="text" name="I02"  id="ID02"></p> 
            <p><input type="text" name="I03"  id="ID03"></p> 
        </form> 
    </body> 
</html> 

尚、上記サンプルは、カーソルを2番目のテキストボックスに設定しています。

2009-11-06 雑記

今日、久々にちゃいちゃんの夢を見ました。小学校3,4年生ぐらいのショートカットのちゃいちゃんでした。

で、これをママに言うと…今日は6日で月命日だぞ…って怒られました。最近、ちゃいちゃんのこと忘れているからなぁ…。


そう言えば、今日は『松田優作』の20年目の命日ですね。彼は、ベルリンの壁崩壊の年に亡くなったのですね。

天地人で伊達正宗をしている松田優作の長男さん、雰囲気がパパにそっくりになりましたね。


この間だ公開した『Perlノート講座』ですが、ファイル処理と日本語処理の解説が抜けていたことに気がつきました。

この2つ結構ボリュームがあるので、ちょっと時間がかかりそうです。


今日、本『体温を上げると健康になる』の2回目を読み終えました。

この本、本当にすばらしい、健康になるノウハウや道理が満載で、本ブログでも新カテゴリ『健康ノート』を目論んでいます。

2009-11-06 北朝鮮って…

最近また、駄々っ子のように瀬戸際外交していますね。

国家を挙げて、拉致・ハッカー攻撃・核ミサイル…噂では偽札・サりン…。

まさに、極悪の玉手箱ですね。


法華経では、善因善果・悪因悪果だと説かれています。

しかし、これだけ悪いことしておきながら、ベルリン壁崩壊から20年、その時一緒に崩壊すると思ったのにもう20年が経ってしまいました。


いつ、法華経の教え通りになる日が来るのでしょうか…。

2009-11-06 Perlでの配列連結について

Perlには配列変数があり、配列を操作する組み込み関数も沢山用意されています。

たとえば、以下の感じ。


では、複数の配列変数を連結したい場合、どの関数を使えばよいのでしょうか…。

実は、関数など使わず、以下のように配列変数のリストにして代入すればいいのです。

use strict;
use warnings;

my @array01 = (1, 2, 3);
my @array02 = (4, 5, 6);
my @array03 = (7, 8, 9);

my @join_array = (@array01, @array02, @array03);
print for (@join_array);

ちなみに、『print for (@join_array);』は以下と等価です。

for $_ (@join_array) {
    print $_;
}

2009-11-05 雑記

昨日は、職場の飲み会(10月の人事異動よる歓送迎会)で、帰ってくるのが遅くなり、また、帰ってきたら長男が珍しく居て、PC占有状態で、日記が一日空いてしまいました。

歓送迎会は、普段あまり話しをしない人と話せて有意義でした。

長男のPC占有状態とは、実は、PCのWIN2000ノートは、長男と共用で、長男は普段夜はほとんど家に居ないのでかぶらないのですが…。

ちなみに、次男と三男は、各々XPノートを持っており、年が若いほどPCも高性能になっています。


このWIN2000ノートは、壊れそうで全然壊れません。

バッテリーは完全に機能していなく、停電になると、ノートなのに即落ちます。

前に、ユーチューブを見ている時にコンセントが抜けて、立ち上がらなくなり、冷蔵庫で冷やしたら復活したことを思い出しました。

このことから、もう一年以上経つのに、このWIN2000ノートは元気ですね!

でも、そろそろ新しいのが欲しい今日この頃です。

2009-11-05 ワードでカッコを入力すると勝手に変更させられる時には…

たとえば、ワードで『AAA{BBB』のあと全角の『)』を入力しても勝手に『}』になってしまいます。

半角の『)』を入力しても同じです。


これは、ワードのオートコレクトの入力オートフォーマットという機能が働いているのです。

この機能をオフにすれば、回避できますが、便利な時も多々あるのでオフにはしたくないですね。


そんな時は、『AAABBB)』にした後、『AAA{BBB)』とします。


ちなみに、入力オートフォーマットをオフにするには、以下の手順です。

2009-11-03 Perlでの and と or について

Perlでの and と or も論理演算子といい、普通の言語のようにif文でも使用しますが、Perlでは以下のサンプルのように普通文でも使用します。


◆サンプル
open my $fh, '>', $file  and print "Open OK!\n" or die "Cannot open '$file': $!";

◆andの性質

◆orの性質

◆サンプル解説

で、サンプルのようにandとorの複合になると、ちょっとややっこしくなりますね。

2009-11-03 yaplog(ヤプログ)を速く見るには?

WEB巡回していると、yaplog(ヤプログ)系のブログのアクセスがめちゃくちゃ重くて遅いですね!!

これ、yaplogのサーバーが遅いのかと思っていたら、JavaSctiptが原因とのことです。


なので、JavaSctiptオフにすると速くなります。

しかし、単純にJavaSctiptオフにすると他の影響が大なので、yaplogだけJavaSctiptオフにします。

以下はIE6でのyaplogだけJavaSctiptオフにする手順です。

2009-11-03 VBでの割り込みエラー一覧(Win32エラーコード一覧)

VBでプログラムを作っているとシステムから割り込みが発生し異常終了するケースが多々あります。

そのとき、エラー番号が表示されるのですが、意味がわかりません。

で、ネットで『VBエラー一覧』で検索しても良いページがヒットしませんでしたが…たまたま見つけたのが以下のページです。

あっそうか、VBでなくWin32で検索すれば良かったんだと気づく…orz

2009-11-03 消毒液とマスク

先日、アメリカでは新型インフルエンザでの死者が1000人を超えて非常事態宣言が出たニュースがありましたが、なぜ桁違いにアメリカは多いのでしょうか?

私の周りの身近にも感染者が結構出てきましたが、一週間もしないで治って復帰していますね。普通の風邪と変わらない感じです。

そんなに、恐れは無いと思うのですが…どうなでしょうか?


とにかく、『手洗い』と『うがい』の実践とオフィス等に入る時の『手の消毒』と『マスク』ですかね。

手の消毒は、クセになりますね。消毒液のアルコールの匂いは、焼酎のような感じで気持ちいいです。

しかし、マスクは息苦しくなり、メガネは曇り、ちょっと勘弁して欲しいですね。


日本は、アメリカに比べて桁違いに死者が少ないのは、医療を受けられる格差が少ないということと、なんだかんだいいながら、日本はまだ裕福なのでしょう。

事実、『タミフルの全世界での使用量のうちおよそ75%を日本での使用が占めており』ということらしいです。


しかし、新型インフルエンザ特需で『ワクチン』『タミフルなどの特効薬』『マスク』『消毒液』の業界は…以下略。

2009-11-02『Perlノート講座』というWebページを公開!!

実は、Perlで挫折した人のための再入門をコンセプトとしてスタートした『初めてでないPerl』でしたが、イマイチだったので…。


『Perlノート』の人気にあやかって、『Perlノート講座』として再スタートします!!


プログラミング初めての人が、無理なくPerlをマスターできる講座になっているはずです…。

本当は、Perlで私の作ったシステムを担当者に理解してもらうために、Perl基礎を『Perlノート』から抜粋して作りました。

折角なので公開します。なにかの参考になれば幸いです!!

2009-11-01「布薩の日」の団体参拝

今日は、何年かぶりに中野の某教会大聖堂に家内と2人で行きました(正確には、行きは他に2人の信者さんを車に乗せて4人、帰りは家内と2人)。全国の教会から大勢の信者さん方がお参りに来ていました。


全員でお経(法華経)を読誦し、北海道の信者さんの説法を聞いたあと、会長先生のお話しを聞き、無作為に選ばれた10人ほどで身の上話し(法座)をしました。しかし、全国からこのイベントのために、時間とお金をかけて、こんなに沢山の人が参拝にくるとは、改めて驚きでした。


で、法座(身の上話し合い)ですが、これが不思議で、先ほど説法をした方が隣で、法座主が青森から来た方なのですが、私の教会(三鷹教会)のとある信者さんのお母さんなのです。よく宗教では、『偶然などなくすべてが必然』といいますが、なんか、そのように思えた今日一日でした。


家内とも、仲良しになれた感じで、すごく有り難かったです(別に喧嘩をしているわけではないのですが…)。しかし、光祥先生のお経のペースは、睡眠薬代わりで、寝不足の人にはよく効きますね。もうちょっと、早いペースに出来ないものですかね……。


毎月1日と15日は、「布薩の日」です。

「布薩の日」に関しては、以下に書きました。


もう、11月になってしまいました。

時間が経つのが早いですね!

今月もいろいろと頑張って参りましょう!ではまた!