そろそろシーズンも終わって時間も経ってので、一年を振り返ってみよう。東海岸ではまだ何か続いているようだが、きっと時差のせいだろう。
惜しくも栄冠は逃したものの見事四位入賞を果たしたオークランド・アスレティックス。しかも後ろのチームはその姿さえ見えないくらいのぶっちぎりだ。あまりの人材不足から右も左もわからない新人投手が先発した試合の数はメジャーリーグの記録を打ち破ることになった。また、チームは個人に優先するとはいえ、個人記録にも素晴らしいものがあった。最多敗戦投手ランキング上位20位に2人が入選、いずれも二桁の数字を残しての達成である。カート・スズキが今年も安定した成績を残し、マーク・エリスが一度だけ週間MVPを獲得したり、後半戦からレギュラーになったラジャーイ・デイヴィスが打率3割(規定打席不測)を達成するなど、明るい話題もなくはないが、逆にこれらの「ちょっといい話」以上に明るい話題は、せいぜいマット・ホリデーを高値で売り飛ばして期待の若手選手がわんさか獲得できたり、センスは誰もが認めるが結果がついてこないためルール5ドラフトでレイズをお払い箱になったアダム・ケネディーを拾ってみたらなんだか俄然やる気を出して.285くらいの打棒をふるった他、長期契約したチームの期待を裏切りつづけてレギュラーを剥奪されたボビー・クロスビーが内野ならどこでもこなせるユーティリティとして意外な活躍をみせたりしたくらいか。
春先にチームに帯同していた大物たち、オーランド・カブレラ、ジェイソン・ジアンビ、マット・ホリデーは夏を前に早々に消え去り、当初の色気は捨ててさっさといつもの「再建」モードになってしまったチームだが、そんな主力選手を放出して迎えた後半戦の方が勝率がいいのが不可解である。移籍先のカージナルスで念願叶って出場したプレーオフにて、マット・ホリデーがチーム全体を観客もろとも奈落の底に突き落とした9回裏2アウトからのエラーが、予言されていたと考えるべきか。そして、ガルシアパーラは人生で何度目かの引退を考えている。
Popularity: 3% [?]
ぜんぜん更新されないhp miniのLinuxディストリビューション「MIE」に不安を覚えたのと、ネットブック風デスクトップやharbour-launcherが気に入らなかったので、Fedoraに戻ることにした。
インストールはいたって簡単で、liveusb-creatorを利用してUSBメモリにイメージを作成して、USBスロットに挿してからf9キーを押しながら起動、デスクトップに表示されるインストーラのアイコンから普通にインストール作業を進める。
ここまではいいのだが、それですべてというわけにはいかない。一番困ったのが、デフォルト状態では無線LANがうんともすんともいわないこと。
# lspci -v|grep Network 01:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g (rev 0
Broadcom社のBCM4312という製品を動作させる必要があるようだ。RPM Fusionにこれに対応したドライバがあるので以下の要領でyumで追加できるようにした。
# su -c 'rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm \ http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm' # yum install broadcom-wl
ところが、インストール時のカーネル2.6.29だと問題なく動作するのに、yum updateでカーネルを更新してしまうと動作しなかった。いろいろ調べてみたが、結局ここで見つけた手順に従い/etc/modprobe.d以下の適当なところで
# yum install wl-kmod # echo "install ssb /sbin/modprobe wl;/sbin/modprobe --ignore-install ssb" >> /etc/modprobe.d/dist-oss.conf
として再起動したところ、無事に動作した。
それから、外出先でWillcomのUSBモデムNS001U(netIndex)を使いたかったのでこちらも設定したが、特に難しいこともなく、普通に「システム」→「管理」→「ネットワーク」から新しいハードウェアとして一般的なモデムを選択し、USBモデムが/dev/ttyACM0として認識されていたのでモデムデバイスとして指定、それからデバイスとしてプロバイダ情報にあれこれ書き込み、「Willcom」として保存すると、/etc/sysconfig/network-scripts以下にifcfg-willcomというファイルが出来上がっていて、/etc/ppp/peers/willcomもさっくり用意されるので、あとは
# ifup willcom
で接続できた。めでたしめでたし。
Popularity: 4% [?]
Hadoopでときどき「Incompatible namespaceIDs in /tmp/hadoop-user/dfs/data」みたいなエラーが出る。既知の問題らしく、namespaceのIDを記述したファイルを見ても同じだったりするので困るが、潔く
$ $HADOOP_HOME/bin/stop-all.sh $ rm -rf /tmp/hadoop-user/* ←パスは設定ファイルに依存、間違えたら知らないよ $ $HADOOP_HOME/bin/hadoop namenode -format $ $HADOOP_HOME/bin/start-all.sh
で再フォーマットすると直る。
なかなか便利なトラブルシューティング集を見つけた。
Popularity: 3% [?]
仕事でいわゆるデコメール、アレンジメール、ようするに携帯向けHTMLメールを送信するプログラムを作成することになり、いろいろ悩んだので同じことになる人がいないようにメモしておく。
docomoには仕様書があるが他のキャリアにはなかったので、ほとんど勘で作業することになった。困ったポイントは(1)auのcidは@の数と書式に制限がある(2)SoftBankはboundary文字列の長さに変な制限があること。
HTMLメールに関しては、各キャリアともガラパゴスといわれるのも仕方がない仕様だと思う。外部の画像ファイルの読み込みを制限する必要があるのは理解できるが、それでもマルチパートのメールとしての書式くらいは守ってほしいものだ。
とりあえずいくつかの端末で動作したので公開しておく。今後不具合が見つかった場合に改修するかもしれない。
改行は全てCRLFとする。 【】内はフォーマットではなく フォーマットの詳細。
docomo
MIME-Version: 1.0 FROM: me@example.com Subject: 【mime encodeしたJIS文字列】 TO: you@example.com Content-Type: multipart/related; boundary="------------boundary1" Content-Transfer-Encoding: 7bit --------------boundary1 Content-Type: multipart/alternative; boundary="------------boundary2" Content-Transfer-Encoding: 7bit --------------boundary2 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit 【mime encodeしたJIS文字列】 --------------boundary2 Content-Type: text/html; charset=ISO-2022-JP Content-Transfer-Encoding: quoted-printable 【quoted printableにエンコードしたJISのHTML】 (画像は<IMG src="cid:0@0">のような書式になる) --------------boundary2-- --------------boundary1 ←複数の画像がある場合はここから画像データまでを繰り返す Content-Type: image/gif; name="【mime encodeしたJIS文字列】.gif" Content-Transfer-Encoding: base64 Content-ID: <0@0> 【base64_encodeしてchunk_splitした画像データ】 --------------boundary1--
au
MIME-Version: 1.0 FROM: me@example.com Subject: 【mime encodeしたJIS文字列】 TO: you@example.com Content-Type: multipart/mixed; boundary="------------boundary1" --------------15b49b545 Content-Type: multipart/alternative; boundary="------------boundary2" --------------boundary2 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit 【mime encodeしたJIS文字列】 --------------boundary2 Content-Type: text/html; charset=ISO-2022-JP Content-Transfer-Encoding: quoted-printable 【quoted printableにエンコードしたJISのHTML】 (画像は<IMG src="cid:0@0">のような書式になる) --------------boundary2-- --------------boundary1 ←複数の画像がある場合はここから画像データまでを繰り返す Content-Type: image/gif; name="【mime encodeしたJIS文字列】.gif" Content-Disposition: attachment; filename="【mime encodeしたJIS文字列】.gif" Content-Transfer-Encoding: base64 Content-ID: <0@0> ←必ず「数字@数字」とする 【base64_encodeしてchunk_splitした画像データ】 --------------boundary1--
SoftBank
MIME-Version: 1.0
FROM: me@example.com
Subject: 【mime encodeしたJIS文字列】
TO: you@example.com
Content-Type: multipart/related;
boundary="------------boundary1" ←21文字にする必要がある
--------------boundary1
Content-Type: multipart/alternative;
boundary="------------boundary2" ←21文字にする必要がある
--------------boundary2
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
【mime encodeしたJIS文字列】
--------------boundary2
Content-Type: text/html; charset=ISO-2022-JP
Content-Transfer-Encoding: quoted-printable
【quoted printableにエンコードしたJISのHTML】
(画像は<IMG src="cid:0@0">のような書式になる)
--------------boundary2--
--------------boundary1 ←複数の画像がある場合はここから画像データまでを繰り返す
Content-Type: image/gif; name="【mime encodeしたJIS文字列】.gif"
Content-Disposition: inline;filename="【mime encodeしたJIS文字列】.gif"
Content-Transfer-Encoding: base64
Content-ID: <0@0>
【base64_encodeしてchunk_splitした画像データ】
--------------boundary1--
途中PHPの関数名が出てきているが、気にしない。あと、PHPでquoted printableにするのにはimap_8bit関数を使った。
Popularity: 5% [?]

