ariyasacca

カテゴリ一覧

Biz | SF | Software | tDiary | Web | ゲーム | サバティカル | スポーツ | ミステリ | メタル | 健康 | 投資 | 携帯 | 時事ネタ | 死生観 | 資格 | 雑記
2004|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|

2010-06-05 (土) [長年日記]

[雑記][健康]虫歯の削ったところは銀歯を被せることにした

かれこれ1ヶ月ほど前から始まった虫歯の治療ですが、何だかえらく時間がかかっています。

歯の神経を抜いて、薬を注入する「根管治療」というやつが終わって、じゃあ今度は噛み合わせを違和感なくできるように被せ物をしましょう、という話になって、今日の診察までにどの方法にするか考えておいて欲しいと事前に言われていました。

対象となる歯は1本だけです。説明を受けて提示された対処法は以下のとおり。

銀歯(保険適用内)
なんちゃら合金と云う金属を使った被せ物。被せた下で進行する第2の虫歯(二次カリエス)というやつのリスクが、他の方法に比べると高いらしい。保険適用後の値段は3,000円くらい。
金歯(保険適用外)
金の被せ物。銀歯よりも金属アレルギーが出る可能性が低い。銀歯よりも耐久力が高い。10万円くらい。
セラミック(保険適用外)
よく分からないがすごく精密な被せ物。見た目は白くて通常の歯と変わりない。18万円くらい。
インプラント(保険適用外)
どうせ二次カリエスになっちゃう可能性があるなら被せ物とかやめて、最初から抜歯しちゃって人口の歯を入れたら良いんだぜと云う割り切った治療法。20万円超。

自分なりに考えた結果、「奥歯だから目立たないし、男だし気にすることでもないし、銀歯でお願いします(><」と今日の診察で伝えて、歯の型を取ってもらいました。来週にSFっぽい銀歯が被せられるらしいです。

セラミックをお薦めされたものの、歯は大事だけど、ケチな自分としてはポンとウン十万は出しづらい・・・。

これからは歯磨きに気を遣って定期健診にも行こうと誓いました。

あと、一緒に歯茎の検査をやってもらったら「今のところ歯周病の症状は見られないけど歯茎が出血し易いから気を付けてねー」だって。歯茎ってどうやったら出血し辛くなるんだろう。


2010-06-06 (日) [長年日記]

[雑記]リストを処理するときはリスト内包表記を使うのがPythonの流儀

Pythonでは、リスト(配列)を処理するのにfor文ループが必要ときは、まずリスト内包表記が適用できないか考えるのが流儀らしい。コードが短く簡潔になって、パフォーマンス面でも良いとのこと。

例題として、「ツイッターのパブリックタイムラインから日本のユーザの表示名だけ抜き出す」というのを考えてみる。

import urllib2
import json

# public_timeline取得
url = "http://twitter.com/statuses/public_timeline.json"
response = urllib2.urlopen(url)
statuses = json.loads(response.read())

# (1)for文
japan_users = []
for s in statuses:
    if s["user"]["time_zone"] == "Tokyo":
        japan_users.append(s["user"]["screen_name"])

print(japan_users)

# (2)filter, map
print(map(lambda s: s["user"]["screen_name"], filter(lambda s: s["user"]["time_zone"] == "Tokyo", statuses)))

# (3)リスト内包
print([s["user"]["screen_name"] for s in statuses if s["user"]["time_zone"] == "Tokyo"])

どれもprint関数の出力結果は[u'user_name1', u'user_name2']の様なリストになる。

  • C言語に似た構文の言語を触ることの多い自分としては真っ先に(1)のように書いてしまうところである。
  • (2)はfilter関数の結果をmap関数でscreen_nameだけ取り出している。
  • (2)をリスト内包に置き換えたものが(3)になる。

これまでの考え方を切り替えて、パッと(3)を思い付くようになることは、なかなか難しい。

参考

エキスパートPythonプログラミング(Tarek Ziade/稲田 直哉/渋川 よしき/清水川 貴之/森本 哲也)

[携帯][時事ネタ]auの請求情報お知らせメールを設定しようとしてもタイムアウトしてしまう

もうタイトルのままで「馬鹿じゃないのか」と言いたいのだけど。

2010年9月請求分 (8月ご利用分) より、毎月郵送にてお届けしている請求書が、ケータイやパソコンで確認するWEB de 請求書に変わります。

2010年6月請求分から2010年8月請求分までは、郵送での請求書とWEB de 請求書の両方がご利用頂けます。

また、2010年9月ご請求分より、紙請求書発行停止特典を提供いたします。郵送での請求書を継続される場合は、申し込みが必要です (有料)。

上記と同内容の案内が封筒で届いた。ご丁寧に、携帯電話端末に設定している4桁の暗証番号が印字されている。いい迷惑である。

紙の請求書が有料になってしまうのは残念だが、しょうがないので請求情報が確定した段階でメールによる通知を受けられる「お知らせメール」というやつを設定しておくことにした。

設定は、ケータイからの操作と、PCのウェブブラウザからの操作と、どちらでも可能なようである。PCの場合は「auお客さまサポート」のサポートIDとパスワードを新たに作らなければならない。面倒なので手元のケータイから申し込むことにした。

  1. パンフレットの案内に従ってau oneトップメニューからWEB de 請求書にアクセスする
  2. 「WEB de 請求書 お知らせメール」設定変更を選ぶ
  3. メールの受け取り先に「このケータイ」を選び、送信ボタンを押す
  4. 「EZサーバーからの応答がありません」
  5. 再度送信ボタンを押す
  6. 「EZサーバーからの応答がありません」
  7. 再度送信ボタンを押す
  8. 「EZサーバーからの応答がありません」

馬鹿じゃないのか。

同じ質問ばかり繰り返すドラクエの王様じゃあるまいし。


2010-06-10 (木) [長年日記]

[時事ネタ]イーモバイルの帯域制限が厳しくなる件

イーモバイルが、2010-08-24より、通信料の多い契約者に通信速度の抑制措置を行う基準について見直すと発表した。

突然だったのでびっくり。

改定後の基準を引用。

対象
24時間ごとに300万パケット(366MB)以上のご利用
制御期間
当日21時〜翌日2時

通信速度が制限されるのは深夜時間帯だし、主に通勤中のフィードリーダー閲覧とツイッタークライアントの常駐の用途で繋いでいる自分の使い方では、ほとんど実害は無いとは言える。動画も基本的に見ない(電車では音が出せないから)。

けど本音はやっぱり、通信の上限におっかなびっくりしながら使うのは、ちょっとなぁという感じ。例えば今日、ちょうどWindows Updateが来ていたけど、この更新プログラムのダウンロードだけで100MBくらいは通信してるんだよね。

僕はたまたま2年契約が切れる時期だったから、「キャリアも色々と厳しいんだなぁ」という程度の感想だけど、iPadで盛り上がってて購入と一緒に回線を新規契約した人とか、かなりムカッと来るんじゃないかなぁ。タイミングが良くないよね。

実測してみた(2010-06-12追記)

いつも通りの使い方で、どれくらい通信するのか測ってみた。通勤中に40分くらい使った結果がイーモバイルのユーティリティソフトウェアに61,301,150 Bytesと記録されていたので、

61301150 / (1024 * 1024) = 58

制限値(366MB)の6分の1くらいと考えれば良いのかな。普段の使い方なら簡単には到達しないかも。

使い方は以下のような感じ。

  • ツイッタークライアントとウェブブラウザをずっと使っている。主にウェブ版のフィードリーダーをだらだら見ている。
  • 利用しているTwitと云うクライアントはタイムライン一覧にユーザアイコンを表示しないので、ウェブから見たり他のクライアントを使うよりも、通信量は少な目だと思われる。
  • ブラウザキャッシュは全てRAMディスクに持っているので、どんなサイトでも電源入れた後は必ず最初に通信が発生している。通常のブラウザ設定なら、よく見るサイトでキャッシュヒットして、もっと通信量が減ると考えられる。

YouTubeやニコニコ動画のような動画サイトは、モバイル利用では見ないのだけど、画像を多用する記事が掲載されるギガジンや2chコピペブログはよく読むので、ガンガンと通信量を増やす要因になっているんじゃないか。


2010-06-21 (月) [長年日記]

[雑記]CodeIgniter雑感

ちょっとした社内ツールを作らなければいけない要件があったのですが、与えられている時間が少なかったので、前から気になっていたPHPのWebアプリケーションフレームワークCodeIgniterを使ってみたところ、とても良く出来ていてこれは便利だなぁと感心しました。

  • 充実したユーザガイド
  • サーバ側にそのまま配置して、必要であればmod_rewriteを設定するだけのお手軽さ。
  • 押し付けの少なさ。必要なところだけ使えば良いので、MVCのVC部分だけ流用するのも簡単。
  • 明示的にロードするまでモジュールを読みに行かないためサクサク動く。毎回使うモジュールはオートロードに設定しておけば楽。

言語仕様にアクセス修飾子が含まれていなかったPHP4もサポートする関係から、やや古めかしい規約ベースの命名縛りがあるものの、とても良く考えられたフレームワークです。

僕の場合はsystem/application/helpers/MY_string_helper.phpファイルを作って下記のヘルパ関数を追加したくらいで、後は最初から用意された機能だけで、やりたかったことは実現出来ました。

if (!function_exists('h')) {
    function h($str, $charset='utf-8') {
        return htmlspecialchars($str, ENT_QUOTES, $charset);
    }
}

if (!function_exists('d')) {
    function d($o, $isExit=true) {
        echo "<pre>";

        switch (true) {
        case is_object($o):
            var_dump($o);
            break;

        case is_array($o):
            print_r($o);
            break;

        case is_bool($o):
            echo ($o === true) ? "TRUE\n" : "FLALSE\n";
            break;

        default :
            echo $o . "\n";
            break;
        }

        echo "</pre>";

        if ($isExit) {
            exit();
        }
    }
}

ユーザガイドは詰まった時しか参照していないので、もしかしたら、わざわざ追加定義しなくても用意されていた機能かもしれません。

コマンド叩いて自動生成みたいな、わざわざPHPっぽくないことをやらない割り切りのお陰か、かえって使い易くなってる印象です。作りたいものが小規模で最初から全体像が見えているようなケースでは、CodeIgniterとてもお薦めです。

DB設定がmysqlじゃなくてmysqliだった

余談だけど、かなり久し振りにPHP触ったのでデータベース設定がずっと上手く行かなくて「おいmysqlをちゃんと指定しているのに動かないぞ!」と袋小路に迷い込んでしまいました。よく考えたら、使っているのがmysqliだったので、こっちを指定したらちゃんと動きました。

小1時間、これにハマってしまって恥ずかしい。

$db['default']['dbdriver'] = "mysqli";

Active RecordやScaffoldingは、個人的に要らなかったので使いませんでした。

[ミステリ]高田崇史『麿の酩酊事件簿 花に舞』

麿の酩酊事件簿〈花に舞〉 (講談社文庫)(高田 崇史)

名門・勧修寺家の十七代目当主にしてベンチャー企業のオーナー、文麿。三十一歳・独身貴族の彼は、理不尽な家訓に適う素敵な花嫁を募集中!しかし彼の前に現れる美女たちは、なぜかトラブルメーカーばかり。彼女たちが巻き込まれた事件を、酔うほどに冴える酩酊推理で解決する文麿だが、結婚への道は遙か遠く。

「酔えば酔うほど推理が冴えるとか、マンガかよ!」とツッコミを入れながら読んだら、ほんとにマンガの原作がある作品だったらしい。あとがき読んで初めて知ったよ。

短編が4作収録されているけど、ほぼ定型フォーマットで話が進む。

  1. 文麿が美女と出会う
  2. がんばってアプローチかけてデートに誘う
  3. 酔って名推理して事件解決
  4. 翌日ひどい二日酔い、美女は遠くへ行ってしまう

二日酔い状態の文麿がイラッとするところまで含めて、作者の狙いどおりなんだろうなぁという感じの物語である。

短編集とは言っても、連作形式となっていて大きな時間軸は繋がっているのだけど、話の続きがとても気になるところで1冊終わってしまったのがとても残念。


2010-06-27 (日) [長年日記]

[雑記]『NHKスペシャル 映像の世紀』を見た

ちょうど最近、ボスニア紛争の話などがネットで話題になっていたこともあって、前々から「もう一度、最初から見返したいなー」と思っていた『NHKスペシャル 映像の世紀』を図書館で借りてきた。

このドキュメンタリーをリアルタイムで見たのは、確か中学生の頃で、僕は世界史には全然興味が無かったのだけど劇中曲「パリは燃えているか」の有無を言わせぬ迫力に引き込まれて、放送の日は父と一緒に食い入るようにテレビの前に座っていた。

大人になってからはネットのお陰で、ウィキペディアやら、やる夫が解説してくれる話やらで、世界史(特に近代史)は興味が出て来たので、もう一度見たかったのである。

第1集のオープニングナレーションが、

20世紀は、動く映像として記録された最初の世紀です

から始まって、内容はまさしく、戦争と革命と兵器が映像でひたすら記録された世紀だった訳だけど、21世紀は100年後にどんな世紀として記録されるのかなぁ。今や個人の持つデバイスで動画が録画できてネットで映像配信できる時代になってしまった。

NHKスペシャル 映像の世紀 SPECIAL BOX [DVD](山根基世/加古隆)

[Software]coLinuxにDebian lennyを入れた

備忘録として書いておきます。

環境

  • Windows Vista 32bit(ホスト)
  • coLinux-0.7.7
  • debian-504-i386-netinst.iso
  • インストールのパスはd:\data\coLinux

ネットワーク設定

[コントロールパネル] - [ネットワークとインターネット] - [ネットワーク接続の管理]から、Tap-Win32からメイン回線への接続を許可する。

【スクリーンショット】メインのワイヤレースネットワークプロパティへの接続を許可

Root File System Imageの作成

以下の2ページが、まとまりまくっているのでとても参考になる。

Windows Vistaの場合は、空イメージファイルを作成するには、コマンドプロンプトを管理者モードで起動する必要がある。容量は10GBにした。

d:\data\coLinux> fsutil file createnew root_fs 10737418240
d:\data\coLinux> fsutil file createnew swap_device 1073741824

Debianのセットアップ

coLinuxの設定を、作成したイメージファイルを使って起動するように変更する。

kernel=vmlinux
initrd=initrd-default.gz
mem=512
cobd0="d:\data\coLinux\root_fs"
cobd1="d:\data\coLinux\swap_device"
cofs0="d:\data\coLinux"
eth0=tuntap
root=/dev/cobd0
ro

rootユーザにパスワードを設定し、sudoとsshをインストールして、後はホスト機側のターミナルソフトウェアからログインして作業する。

常時使いたい訳ではないので、必要な時だけすぐに使えるように、以下のようなバッチファイルを保存してコマンドランチャに登録しておく。

cd /d d:\data\colinux
colinux-daemon.exe -t nt @myinstall.conf

ソフトウェアによっては、新しいバージョンも入れられるようにしたいので、debian で補助的にunstableパッケージを使えるようにする設定を参考に(この場合はs/etch/lennyと読み換えて)sources.listを編集する。

# Subversion 1.5.xを入れようとする
$ sudo apt-get install subversion -s
# Subversion 1.6.xを入れようとする
$ sudo apt-get -t unstable install subversion -s

# Python 2.5.xを入れようとする
$ sudo apt-get install python -s
# Python 2.6.xを入れようとする
$ sudo apt-get -t unstable install python -s

debian lenny(stable) で stable 以外のパッケージを使うという記事で紹介されているapt-cache policyも分かり易い。

$ apt-cache policy python
python:
  Installed: (none)
  Candidate: 2.5.2-3
  Version table:
     2.6.5-5 0
        500 http://ftp.jp.debian.org testing/main Packages
         90 http://cdn.debian.or.jp unstable/main Packages
     2.5.2-3 0
        990 http://cdn.debian.or.jp lenny/main Packages

[雑記]ワイヤレスゲート ヨドバシカメラオリジナルプランに申し込んだ

新幹線で移動中にネット接続がブツブツと切れるのはもう嫌だよ! と思ったので、月額380円だし、今なら2ヶ月無料みたいだし、試しに申し込んでみた。7月に早速使ってみる予定。

N700で利用する前に、モバイル用のPCにユーティリティを入れて、近場のマクドナルドで接続してみようかな。

そろそろ東海道新幹線のN700運行車両で検索する方法は、JR東海が公式に提供してくれても良いと思うんだ。


最近のツッコミ

  1. 雷悶 (2018-05-17(木)22:26)「倫理ですの先生は、表紙だけ見た時点では女性だと完全に勘違いしてました。」
  2. ウルトラマンの人 (2018-05-14(月)04:08)「倫理ですで一番エロいのはせんせーだと思う。 立ち方が一々セクシー過ぎないか。」
  3. QCで何もない羽島に行かされた可哀想な人 (2018-02-05(月)22:13)「確かにそうかもしれない。社長用みたいな。」

参号館  の中の  日記(ariyasacca)

トップ 最新 追記