B♭M7セッション(帯広市)

一年ぶりにB♭M7のセッションに行く。

夜8時頃店に入ると、マスターでベース奏者の源さんが一人で楽器の調整をしているところだった。一年ぶりの来店だったが、源さんは私のことを覚えていてくれた。まもなく私の兄夫婦が来店し、最近の十勝のジャズ事情について色々話を聞く。B♭M7は十勝で唯一ジャムセッションを開催しているジャズクラブで、驚くべきことにほぼ毎日ジャズのライブがある。5年前に開店したときからジャムセッションを開いている。

間もなくピアノの女性が来店し、源さんがドラム、私がベースでピアノトリオでセッションが始まる。最初ウッドベースのポジションになかなか慣れずに苦戦したら案の定兄に「演奏が硬いな」と言われてしまう。時間が進むとドラム、ベース、ボーカル、サックス、エレキベース等の人たちが集まりだんだん盛り上がってくる。年齢層も20歳くらいから白髪の男性まで幅広い。

12時半ごろジャムセッションが終わる。

また来年来ます。

兄のブログ

willcomとネットワークエラー

自分はWillcomのPHSを使っている。

最近、メールを受信しようとして「ネットワークエラーが発生しました」という表示が出る事がたびたびあった。症状はこうだ。

・メールやWeb等パケット通信しようとして、「ネットワークエラーが発生しました」と出る事がある
・一度エラーが発生すると、何度やってもつながらない
・しかし通話に関しては全く問題なく使える
・アンテナは全部立っている

Willcomのサポートに電話してみた。サポート氏は、電話機の問題もあるかもしれないが、自宅近くの基地局に問題があるかもしれない(問題は自宅にいる時だけ起こるのだった)ので、調査してみます、またご連絡します、との事だった。一週間ほど前の話だ。

今日、Willcomのサポートから電話があった。自宅近くの基地局の一つに問題が発見され、修理されました、との事だった。確かにもうネットワークエラーは出ない。サポートに感謝である。

introセッション(高田馬場)

久しぶりに高田馬場の「イントロ」セッションに行ってくる。

8時くらいに店に入る。ベースは中村さん、村山さん、若井さんと私だ。ドラム4人、ピアノ5人、ボーカル一人、管2人、ギター2人くらいだ。隣に座ったトランペットの方と二言三言お話をする。最初はピアノトリオ+井上マスターで「Just Friends」を演奏する。久しぶりの演奏のせいか、ベースランニングでスウィング感が出せない。棒読みならぬ「棒弾き」のようなベースになってしまう。

店は9時過ぎ頃から混雑してきたが、昔のように外で何人もの演奏者が順番を待つというほどでもなかった。演奏しない聞くだけの人も何人かいた。今日は管楽器が少ない。9時頃トランペットの方が来るまで、管楽器はアルトサックスの井上マスターだけという状態だった。

トランペットの方と「Softly」「Stella」、ピアニカが入った「Emily」、最後に「Day by Day」を演奏して11時頃店を出た。

途中新宿の知音に寄って腐乳を買って帰る。

IE, FireFox, Chromeで大丈夫なtableタグがOperaだと崩れる

tableタグを使用して作ったページが、IE, FireFox, Chromeでは問題なく表示されていたのに、Operaだけ崩れて表示されるという現象に遭遇した。

色々調べていると、下記のページで原因がわかった。

itochan – Operaで崩れるテーブル(たいした話じゃありません)

つまり、tdタグでrowspan=0としたときの挙動がOperaの場合「ここから全行」と解釈されるのに対し、その他のブラウザは「1行」と解釈されるのが原因だった。驚く事に、Operaの解釈が正しく、他が皆標準とは違う解釈ということだ。

http://www.zspc.com/html40/

より

「・rowspan = NUMBER (CN)

このセルから、指定された数の下方向のセルを連結して1つのセルにします。デフォルト値は1です。0が指定された場合には、このセルから同じセクション(THEAD, TBODY, TFOOT)内の一番下までのセルを連結します。」

運動会

今日は子供の運動会だった。

朝早起きして4人分の弁当を作り、小学校に運動会を見に行った。

息子は去年までリレーの選手に選ばれていたが、今年は選考会で友達より遅かったので選ばれなかった。家で泣いて悔しがっていたが、今まで何もしなくても選手だったのがおかしかったんだ、サッカーのコーチにどうやったら足が速くなるか教えてもらってがんばってみたら、というような事を話した。

短距離走、学年全員での踊り、大玉ころがし、PTAによる綱引きなどいつもの運動会のプログラムをこなし、今年も無事運動会が終了した。後片付けでサッカーのゴール(これがけっこう重たい)をもとに戻すのは、サッカークラブの父親の仕事なので、これもやってから帰った。

日差しの強い一日だった。腕と顔がひりひりする。

町内会

先日、はじめて町内会の会合に行ってきた。

この辺の町内会は20戸ぐらいで構成される「班」、それが10くらい集まった「支部」、さらにそれが集まるかたちで町内会というものが組織されている。「支部」と「町内会」の間にさらに「地区」というものがあって、その集まりに行ってきた。

私は今年、「支部」の「防災委員」というのをやることになったのだ。それでお呼びがかかったのである。

20人くらいの人が集まっていた。やはり、というべきか高齢のご婦人が大半だ。私がいちばん若いらしく、自己紹介の時に「紅一点」と呼ばれてしまった。蛇の巣にやってきた蛙のような気分だ。

今年はやる事が多い。息子のサッカークラブの役員やらPTAのボランティアやら、それから町内会の「班長」というのも今年まわってきたのでいろんなところに顔を出さないとならないのである。

「事実上」派遣業

懐かしい気持ちになる記事を見つけた。

開発現場が変わるハッピー・コミュニケーション術: 常駐SEはつらいよ!

身に積まされる記事でもある。零細IT企業に転職した筆者は、入社当日から戸惑う。

「事務所には60歳くらいの社長と事務の女性がいるだけで、数十人いるはずの技術者たちが事務所にはいません。技術者だけでなくコンピュータも見当たりません。いったいどこで誰がシステム開発をするのだろうと...」

入社後は研修を受けると聞かされていた新兵の筆者は、しかし丸腰で最前線に放り出される。

「しかし、プログラミング技術を身に付けるどころか、入社してすぐ面接、そして即日、現場常駐ということになってしまいました。しかも面接時にお客さんに提出する経歴書には「開発経験3年」と書かれております。」

彼が私の隣の席で仕事をしていたなら、こうつぶやいたかもしれない。「お前は、売られたのさ」

小火(ぼや)

小火(ぼや)に遭遇した。

夜、妻と子供と散歩がてら買い物に行こうとぶらぶら歩いていると、突然「ボン」という自動車が衝突したような音と「バリン」というガラスが割れる音がした。振り返ってみると、マンションの一室の中に火が見える。あ、火事だと思い、携帯ですぐ119番通報した。

消防車が数台、すぐやってきた。第一通報者はいますか?という消防隊員の問いかけに、あ、私です、と答えた。ご協力くださいという事で、事情を詳しく話す事になった。消防の情報統括車のような車両のなかで事情を話しているうちに、救急搬送が終わって撤収しはじめた。火はすぐに消えていたので、当事者が消したのかもしれない。携帯を見たら私が通報してからちょうど20分たっていた。

近所でこんな事があり、しかも私が第一通報者になってしまって、驚いた。

abstractなstaticメソッドを書く事に意味はあるのか

phpでクラスライブラリを書いていてふと思った。

DBのテーブルに紐付いたクラスというものを書いていて、それらは共通の基底クラスを持っている。基底クラスはコンストラクタでabstractなメソッドをコールする部分があり、それによって派生クラスで定義されたDBのテーブル定義を取得している。基底クラスは当然abstractだ。

外部からテーブルの定義だけ取得したいなと思ったときにいちいち派生クラスのインスタンスを生成するのは面倒だと思って、abstractなテーブル定義メソッドをstatic宣言してみたが、そうすると基底クラスのコンストラクタがこけてしまった。

Fatal error: Cannot call abstract method kscObjectList::getTableDef() in /home/…../ksc_……class.php on line 50

基底クラスのコンストラクタは、定義された派生クラス側のメソッドをコールしようとせずにabstractなままの基底クラス側のメソッドをコールしようとしてこけている。それにロード時に文法エラーでこけてるのではなく、インスタンスの生成時に実行時エラーでこけている。

ちょっと待てよ?abstractメソッドは派生クラスで定義する事を義務付けるために存在するはずだ。定義しないとどうなる?インスタンスを生成できなくなる。インスタンスを生成できなくする事によって、定義を強制しているというのが自分のもっている感覚だ。

ではstaticなabstractメソッドが基底クラスにあったとする。派生クラス側で定義しないと、派生クラスのインスタンス生成時にエラーになり、派生クラス側で定義すると、インスタンスが生成できるとする。でもstaticなメソッドから、生成されたインスタンスは(パラメータとして外部から渡されたりしない限り)見えないから、staticメソッドの定義強制をインスタンスの生成許可/禁止によって制御するのはよく考えれば非常におかしな話だ。

でも、ここのページにあるように、Factoryメソッドの定義を派生クラスに強制させるために、定義しないとエラーになるstaticメソッドを基底クラスで宣言するというのは意味があるだろう。

そもそもabstractというキーワードは(私が思うに)インスタンス生成時に実行時エラーになるというニュアンスで通っている気がするので、コンパイル時(phpではロード時?)にエラーになるstaticな抽象メソッドのキーワードがあればいいのになあ、と思った。実際には、現時点ではabstractなstaticメソッドは書けません。5.3.0以降に搭載されるLate Static Bindingにしても、基底クラスから派生クラスのstaticメソッドを呼べるけど基底クラス側を抽象化する機能はないらしい。

Atahualpa Themeでコメント投稿欄の「Leave a Reply」を日本語にする

Atahualpa Themeでコメント投稿欄の文言「Leave a Reply」が英語のままなので、日本語にしてみた。

結論から言うと、Atahualpa Themeの日本語化問題はこれで全て解決したっぽい。

/wp-content/themes/atahualpa/ja_JP.mo

ファイルをコピーして、

/wp-content/themes/atahualpa/ja.mo

を作成する。

これで、「Leave a Reply」は日本語化する。

after

以前はこんな感じ。

before2

Atahualpa Themeの他の日本語化関連問題は、これで全て直っている模様。こんな事で悩んでいたのは私だけかも。恥ずかしい...