作り方は、こんな感じ。
ちょっとしたお休み中に大型自動車免許を取ってみるっていうのはどうかという話になり、調べてみました。 東京都の場合、警視庁の運転免許手続き案内を見てみたところ、多磨霊園のところにある府中試験場のみだそうです。 低予算でいきたいので練習場さがしているんですけど、ないのですかねぇ。 府中試験場の横の代書屋の並びに練習場みたいなのがあったので、ちと顔でも出してみますか。 まずは仮免許からか。
年末年始に実家に帰っていたときに見た、ぼくと妹の小さい頃の写真があったので、借りてきてスキャンしてみた。 1984年ごろの写真で18枚を借りてきた。 ここに載せた写真の2枚ともに写っているヨークシャーテリアはレイ(麗)ちゃんという名前で、当時は11歳〜12歳のお姉さまな犬でした。 名前に相応しいぐらいの美人じゃなくって美犬さんでしたよ。
ここに写っている男の子が、小さい頃のまさる(6才)で、膝に乗っているのがレイちゃん。 どこで取った写真なのか、まったく覚えていません。(笑) 小さい頃からレイちゃんとは仲が良く、お互いに尊敬していたのかなと思います。
妹と三人で写っている写真がレイちゃんのお誕生会のときの写真で、6歳の僕のひざの上に乗っています。 この写真撮っていたときの覚えがあり、レイちゃんの胴体をダッコしていたら、ぼくの抱え方がレイちゃんにとって気持ち悪かったらしく、レイちゃんがすごく耐えていた覚えがあります。
これは長野県の原村のペンション村とかに行っていたときの写真。 手前味噌ですがカワイイです。(・∀・) 同日に写っていたペンション「ドン・キ・ホーテ」なのですが、今でも健在なようです。
原村の伊東ペンションの鉄道模型前。 伊東ペンションの鉄道模型は、メルクリンのHOゲージで、晩御飯後に走行会があるのです。 小さい頃から、ここの鉄道模型が大好きなのです。
小さい頃、自分の写真を撮られるのが恥ずかしくって嫌だった時期もあるのですが、こうやって22年経って見ると懐かしく、もっと多くの写真がほしいなんて思ったり。
途中の西湘バイパスとか小田原の早川あたりで渋滞には待ったりして、1710ごろに伊東の山喜旅館に到着。参加者17人ぐらい。いま自己紹介とか。(18時ごろ)
2030ごろに飯完了→議論→2200ごろから各テーマごとに分かれて議論→23時から発表、ネタは「ID認証、与信、決済」「セカンドライフ」「モバイルQ&Aシステム」「イベントのお招き」→まだ継続中。酔いは覚めましたw (23:50)
朝9時からミーティング中。(10:14)
10時から企画の4P (Product, Price, Promotion, Place) の発表中。10:35現在で4つ中の2つ目が発表中。
大手町ビジネスイノベーションインスティテュート(略称:OBII)の合宿に行きました。 年末のRTCカンファレンスのときにアナウンスがあり、前回の合宿時の成果では comatta.jp がローンチされたなどがあり、何か新しいもの作れるかもと淡い期待をして参加しました。 場所は静岡県伊東市の山喜旅館で参加者は延べ19人ぐらいだったと思います。 先日のRTCカンファレンスでご一緒させていただいた方が一人ご参加されていました。
一日目は16時集合で自己紹介など、なのですが、横井は渋滞に巻き込まれて、まだその時間には熱海あたりでした。 行きの経路は、初台→山手通り→246→環八→第三京浜→横浜新道→国道1号→新湘南バイパス→国道134→平塚市内の裏道→西湘バイパス→国府津の西湘SAで休憩→西湘バイパス→国道135→熱海ビーチライン→国道135で伊東。 18:30から晩御飯でアルコールつき。 20:30ごろに晩御飯が終わり、ミーティング開始。 どんなサービスを作りたいかということで、テーマが4つに分けられ、横井は「ID・与信・決済」の課題に。 同じ課題に参加したメンバーは横井を含めて4人で、3人が技術者だった。 ほかのテーマでは技術者がいない場合もあったりと。 問題点としては、複数のSNSなどのサイトを渡り歩くときに、いちいちIDとパスワードの発行したりしなければならず面倒なので、一括して使えるSSO環境があるといいよね、というのと、インターネットの利用者の与信って大変だよね、っていうところが問題点としてあがりました。 いろいろと調べたところ、SSOにおいてはSAML(Security Assertion Markup Language)というのがあるということだったので、SAMLの勉強しましょうということに。
二日目は8:30から朝ご飯。 サービスの4Pなどをまとめたり、これを実施するのにどのぐらいのコストやスケジュールでいきたいかなどをまとめて発表する時間に。 途中にランチなどをはさんで16時ごろまでやっていました。
参加しての感想ですが、参加されていた方の顔ぶれとしては、某大手通信事業者にお勤めな方、地方の新聞社さんにお勤めなかた、某コンサル会社の方、某商社でアパレルのECサイトをされている方、個人で活動されている方、などなど、大きい企業にお勤めな方から、いわゆるフリーランスな方まで、いろいろな方が参加されていました。 皆さん innovative なことに興味がある方々で、大変有意義な時間をすごせました。 ITMedia の鷹木さんが取材に来られていたので記事になるかと思います。
最近、勤めている会社では innovative なことができずに悩んでいた時期で、いろいろなことがすっきりしました。 Innovative なことがしたければ innovative な志のある人たちで集まって切磋琢磨して進んでいかなければならないのですね。 いろいろと元気もらいました。
帰りは、かなり鼻風邪がひどかったので点鼻薬で鼻水抑えながらクルマを運転して帰りました。 熱海を過ぎて湯河原のセブンイレブンで休憩して、真鶴道路を通らず地道で西湘バイパスの石橋。 石橋から小田原厚木道路のジャンクションまでの200円って、あれってボッタクリじゃないですか。(笑) 風邪がひどかったので大磯・海老名・港北とすべてのSA・PAに寄りながら帰宅。 港北あたりでかなり体調回復していました。 厚木で高速乗るのが20時を過ぎていたので、東名は通勤割引の半額になりませんでした。orz
ってことで、今回の勉強会の続きとしてSAMLの勉強会みたいなもの開催しないと、ですね。
弊社作業場というかPC周りのセッティングなどを行ってみた。 左側にあるのがノートパソコン、真ん中が Dell SC430 に Windows XP を入れたもの、右側が Pentium 3 1200MHz の低速マシンに Debian の Gnome が入った環境という具合。
右側と中央のモニタのPCには Synergy がインストールされていて、中央モニタのところにあるキーボードとマウス(トラックボール)がWindowsのPCに繋がっており、このキーボード+マウスでそのまま Linux 側のPCも操作できるって具合。 KVMスイッチを使って一つのキーボード+マウスを切り替えていたのが、そのキーボード・マウスがTCP/IP上で共有できるようになったという具合。 複数のPCを一つの机でお使いな方は、ぜひお試しあれ。
中央で使っているキーボードですが、いろいろと検討した結果、HHK Lite になりました。 自宅机なのでそれほど広くないので、Microsoft Natural Keyboard がチト大きく感じたのと、Kinesis Ergo を修理に出していないのでコレを修理に出さないと、って感じ。 マウスは Kensington のトラックボール。
右側のPCのモニターが SVGA (1024x768) で、ちと SXGA (1280x1024) ぐらいの液晶モニターがほしいところ。 新品買ってホゲホゲって気がしないので、どなたか譲ってくれませんかね。 できれば DVI 入力ついているの希望。
realpath って realpath ってパッケージに入っているのか。ってことで apt-get。/etc/environment にあるのね。 ってことでLANG=ja_JP.UTF-8 と LC_TIME=C にしてみた。Crypt::IDEA つかうとよいのですね。 blocksizeの8バイトずつを encrypt していて、base64とかで出力させていい感じ。大型自動車運転免許を取得すべく、まずは府中の試験場に電話してみたところ、試験は試験場へ行って予約が必要だから予約しに来てね、ってことだった。 ってことで明日は朝早起きして府中に行くか。
渋谷の啓文堂で スピード合格!大型自動車免許の取り方(長 信一) とかいう本を購入。 本を読んでいる分には、それほど難しくなさそうなのですけど、どうなのでしょう。
まずは試験の予約をということで、府中の試験場へ。 カーナビで「ふちゅうしけんじょう」と入れても出てこないので、電話番号から入力。 やたらに長い名前が出てきたのですが、よく覚えていません。
東京都の印紙を5千円分近く買って、試験のときに1100円の印紙払うって具合みたいです。 んで予約が30日になったので、30日にまた府中の試験場に行きます。
そろそろまじめに日記のコメントスパム対策したいな、と思って。 画像認証とか入れてみるのはいかがだろうかと考え中。
隣の席のひとが講義したそうで。 って、B-Cookieとかの名称だしてよいのか!っていうところに食いついてみる。 だったら、あれもこれも喋れるじゃん。ニヤリ。
画像認証のCaptchaをやってみた。 やり方としては Perl の Authen::Captcha で画像作って、その文字に書いてある値の MD5 Digest と、実際の人間様が入力したものを照合するって具合。 それほど難しくなかった。
Captcha とかで画像認証させる方法をチラチラと考えていたのだが、画像認証の場合の最大の弱点として、視力に問題ある人の場合、判読できなくなるなんていうことがありえる。 画像認証入れた理由のひとつに、ロボットと呼ばれる自動処理をするプログラムが、たとえばどこかのユーザ登録のIDを大量に取得させるためにロボットを走らせたり、あっちこっちに同時多発的にSPAMなコメントを書く場合などの対抗手段とされる場合がある。 ノイズの入った画像で自動解析しづらいけど人間なら読める程度、ならば、ロボットが自動で走れなくなるだろうっという考え。 でもこの画像が人間でも読めない場合があると。
ってことで、これの対応策として、簡単な四則演算の式を出すって言うのはいかがでしょう? たとえば「3×9は?」って感じのフォームを出すようにして、それを人間が解答するって具合。 割り算とかだと小数点以下が出てくるのでチト考え物ですが、たとえばうちの日記の場合、九九が分からんような人に突っ込んでいただく必要性をまったく感じないので。 数字の部分を全角数字とか漢数字とかにしておけば、しばらくは洋モノ(非日本語圏)のロボットのコメントスパムとかには対応できるでしょう、きっと。 ただ日本人ががんばって正規表現とか書き始めたら一瞬で終わるな(笑)。
机の上にモニタ2枚では机が狭かったので、隣にワイヤーシェルフをもってきて、そこにモニタ1枚を設置。 机の上が広くなりました。 場所の関係で、PCがベッドの真横になってしまったw
家で使っている Ethernet のケーブルのコネクタのつめの部分が折れたので、RJ-45コネクタとかしめ工具を購入。 3千円ぐらいでした。
そっか、ソニーの再建のためにソニプラが売却されたんでしたよね。 でも名前があまりにも安直ですよw
電化製品のソニーが雑貨屋さん始めるなんていうところが、当時のソニーってワクワクしていた会社だったのだなって思うんです。 日米の貿易摩擦が話題になりそうだったころに対応策として、USから冷蔵庫輸入して販売した、とか、ちょっと気の利いた商売を昔のソニーはやっていたみたいで。 でもなんで雑貨屋始めたんだろうなぁ。。(笑)
ビジネスチャンスはどこに有るのかわからないけど、どこにでもあるんだよ、ってうことを、ソニープラザが証明してくれていたように思っています。
午前中はちと運動しようなんて思って、環七までジョギング。 といっても半分ぐらい歩いていましたが。 knakaさんから貰った心拍数計をつけていたら、心拍数200とか出たのですが危険ですよね。(笑)
ADSLのルータを超えてSSH接続していて、無通信な状態が一定以上続くと接続がきられてしまう問題があって、ルーターのNAT無通信切断機能のタイマーを調整するとかして対応することもできるのですが、今回は ssh client 側でなんとかしてみました。
PuTTYの場合は、設定の[接続]の部分で「セッションをアクティブに保つためのnullパケットの送信」のところの「Keepalives間の秒数」のところに適当な時間を秒数で指定します。 うちでは60秒間にしています。 NATの無通信のタイマーなんて数十分ぐらいに設定されているんだろう、とか、勝手に予想しての値ですが。
んで、OpenSSHの場合どうやんるんだって調べたところ、ServerAliveInterval という ssh client オプションがあるので、ここで秒数を指定すればよいみたいです。 ~/.ssh/config に以下のような内容を書きました。
ServerAliveInterval 60
SSH でログインして放置していたら、ターミナルがだんまりして困ったなんていう方、ぜひお試しください。
朝は10時から環七まで走りに。 往復で36分で昨日よりかは心拍数が抑えられている感じですが、分間200とかになっているので、なんとかせねば。 しばらくトレーニング重ねないとダメすかね。
その後はちと休憩して、大型自動車の試験の練習の申し込みをするために、府中の大和自動車教習所へ。 入校金10,500円と1回の練習代の7,350円を払ってきました。 予約は明日の11:50から。
それにしても足の筋肉痛すぎ。 腿の前部の内側の筋肉、っていうと場所が通じるのかなぁ。 ちょうどバイクの自動車教習所での練習のときに、ニーグリップで内股が筋肉痛になるかと思うのですが、その筋肉から下の位置の筋肉。 最近、横腹のブヨブヨぜい肉が減った気がするのですが、体重が若干増えています、筋肉付けすぎか?
近所のNTT ICCで、風の谷のナウシカで出てくる乗り物「メーヴェ」そっくりな乗り物を作っている Open Sky の展示会「OpenSky 2.0」をやっているという情報仕入れたので、早速行ってみました。 入場料は500円。 撮った写真はフォト蔵の opensky tag で投稿してします
いくつかの試作機などを経て、現状では人間が操作できるグライダー状態のものがありました。 今後はジェットエンジン積んで飛ぶんだそうです。 すげー。 胴体はFRPで両翼は木でできているとか、体重50kgまでとか、なかなか面白いです。
常設されているICCの展示物も面白かったです。 描いた図形のものが水槽のなかで泳いでいたり、距離センサーをアートにしたりと、普段は実用ばっかり考えているものをアートに使うってことができるんですね。
共通鍵暗号使ってデータの encrypt/decrypt をしたくって、AES256使おうと思って調べていて、Ruby リファレンスマニュアルのOpenSSL::Cipher::Cipherの部分を参考にして書いてみたところ、このテストコードすらうまく動かないのですが、なぜ。。
#!/usr/bin/ruby require 'openssl'
c1 = OpenSSL::Cipher::Cipher.new("AES256") c2 = OpenSSL::Cipher::Cipher.new("AES-256-CBC") pass = "open sesame!" data = "Hello world!" c1.pkcs5_keyivgen(pass) s1 = c1.encrypt.update(data) + c1.final c2.pkcs5_keyivgen(pass) s2 = c2.decrypt.update(s1) + c2.final p(data == s2) #=> true
実行結果はこんな感じ
$ ruby ./openssltest.rb
./openssltest.rb:11:in `final': bad decrypt (OpenSSL::CipherError)
from ./openssltest.rb:11
ちなみに Triple DES のサンプルコードのほうはうまく動いたんだよな。 なんかRuby側の暗号化ライブラリって、IDEAがよいもの見つからず、AESだとdecryptできず、いまさらTriple DESなんて使いたくないし、と、袋小路に突入中。 PerlのOpenSSLライブラリでも同じこと起きるかチェックしてみますが、今日はもう寝ます。
練習します。
練習する車両はいすゞフォワード。 全長7.4m幅2.3m内輪差1.4mとかで、普通の乗用車より大きく回らないと縁石ひっかけます。 空気圧ブレーキがなかなか難しいです。 コースをグルグル→坂道発進まで練習しました。 翌日は17:50から予約済みで、たぶんS字クランク・後退などの練習でしょう。 3〜4回練習してみることにします。 一回の練習代が7,350円。
たまには電車で移動しようと思い、京王線で調布まで。 通勤快速が初台でやってきたので乗り換えなし。 帰りはスクールバスの武蔵小金井行きがあったので、JRで帰宅。
ちょっと業務連絡。 SAMLのライブラリの zxid の perlモジュールの Net::SAML が undefined symbol で動かなかった件ですが、下記のパッチを zxid-0.7 の Makefile にあててください。
--- ../orig/zxid-0.7/Makefile 2006-10-15 14:39:11.000000000 +0900 +++ zxid-0.7/Makefile 2007-01-18 13:07:19.868345950 +0900 @@ -119,8 +119,8 @@ ### can look, but should not edit). ### -ZXID_LIB_OBJ=zxidsso.o zxidslo.o zxidmk.o zxidlib.o zxidmeta.o -ZX_OBJ=zxlib.o zxutil.o zxsig.o c/license.o c/zx-attrs.o c/zx-elems.o +ZXID_LIB_OBJ=zxidsso.o zxidslo.o zxidmk.o zxidlib.o zxidmeta.o zxutil.o +ZX_OBJ=zxlib.o zxsig.o c/license.o c/zx-attrs.o c/zx-elems.o WSF_OBJ= ifeq ($(PULVER),1)
今日も大型自動車の練習してきましたよ。 場内の曲がるところで内輪差で引っ掛けることはなくなりました。ニヤリ。 今日はS字とクランク。 トラックって運転席がオーバーハングな位置にあるので、前方が乗用車の感覚に比べて遥かに空いていて、S字を曲がっているときにクルマの前端が縁石上にきたときに教官が「ドア開けて確認してください」ってことで確認したところ、縁石とタイヤの間が1メートル近く余裕があるって感じ。 クランクはチンタラと難なく通過。
次回は試験前の29日に予約。
昼過ぎから所用のため大井町。 家を出発するのが少し遅かったので、富豪的に新宿から埼京線→りんかい線に入る新木場行き電車にのって、大崎→大井町200円の超高額コースで大井町入り。 大井町に来たのって武蔵小山に住んでいたとき以来で、超久しぶり。 用件が15時ごろに終わって時間つぶしに大井町丸井の中のマクドナルドの100円コーヒーで3時間粘ることに。(笑) なんか ruby の openssl の使い方まずい気がしてきたので調査中。
メッセンジャーのステータスを「マクド」にしていたら、メガマック100円のクーポン券もらったけど1日限定30食な店舗なため使うことできず、なんていうネタがやってきたりw
19時からOBII合宿の課題の中間報告会のために大手町へ。 大井町と大手町、紛らわしい。 ミーティング会場が18:30から入れるってことなので、18時ごろに大井町出発します。
19時から発表会。 前回の合宿以降の進捗で、内容としてはこんな感じのレポートでした。
ってことで、今後のこのプロジェクトの報告は OBII openpass の blog で行っていこうと思います。 SAMLに興味ある方、ぜひ横井 (masaru at masaru.org) までお声がけいただきたく。
お昼より少し前ぐらいに、渋谷区スポーツセンターへ運動しに。 今日は珍しくスタジオプログラムを開催するとかで、スクワット→腕立て→腹筋→背筋→走りこみ→休憩を30秒ずつ行うとかいうのに参加。 大塚製薬さんの販促キャンペーンだと思うのですが、アミノバリューもらいました。 最近は1リッターのペットボトルにVAAM粉末を溶かして持参しているのですが、次はアミノバリュー買ってみようかと心動かされています。(笑)
運動の後には、いつものガソリンスタンドに行って給油→掃除機→エアクリーナー交換。 前回のエアクリーナー交換から1万キロ以上走っていて、前回クルマ屋の点検で交換しない?って言われたので、買い置きしてあった AUTO EXE のエアクリーナーを装着しました。 フィルタ交換して、エンジンがスンスンまわるようになった感じ(・∀・)。 そのまま勢いあまって奥多摩まで。
中央道八王子→滝山街道→睦橋通り→武蔵五日市→檜原街道→都民の森。 都民の森のお土産屋さんでこんにゃくが150円で売っていたので、ためしに買ってみることに。 奥多摩の特産物はこんにゃく芋か?と思うぐらいに、この界隈ってこんにゃく多いですよね。 家に帰って開封して、一つ生なまま食べてみたのですが、おいしかったです。(・∀・)
その後、奥多摩周遊道路で青梅街道に出て、奥多摩駅近くの「もえぎの湯」へ。 入場料2時間750円と、ちと割高。 露天風呂が塩素臭くってなぜだろうとおもっていて、帰りに写真にあるような看板を発見。 露天風呂は普通の循環式のお風呂だったのね。 内湯はぬるぬるした感じがして、これはこれでよかったです。
帰りは福生あたりで晩御飯たべて、いつものように中央道石川SAで一休みのつもりが、ちょこっと睡眠。 21時ごろにおきて、NHKのGoogleの番組をサービスエリアのテレビで見て、あとは車の中でも音を聞きながら帰宅。
こんな身分でもありますので、それなりに次の職場どうするっていうことについては動いているわけであります。 って、元上司や現上司、同僚が見ているところで堂々と書く俺もオレですけど。
現職と前職で何をしてきたのかなんていうのを、職務経歴書にまとめたり、どれがどれだけ凄かったかなんていうところを説明するとかでいくと、前職の仕事は期間が4年あったためかバラエティに富んでいるなと思いました。 現職はどちらかというと、2つぐらいの期間にわかれて、同じようなことの繰り返しの感じでした、といったほうが良いのかもしれません。 っと書くと現職の2.5年は無駄だったのか、というとそんなことは決してなく、いろいろと貴重な経験はさせていただいたのですけど、全体的にマッタリ気味だったと思うんです。
ただ、今までの仕事で「凄かったのです」というのを簡単に説明するのに便利な案件は、前職のほうが多かった。 「X Window System の changelog に名前が載っています」「雑誌で連載持っていました」とか、「詳細はググって調べてね」って言い捨てれるほどに文章にしやすい内容が多いんですよね。。
これからのキャリアパスも考えていかねばならないのですが、何が得られて何を生産できそうか、どんな実績となって、それを上手に説明する方法を考える、っていうのが、転職時とかには必要なのかな、と思った次第です。
横浜Linuxユーザグループのカーネル読書会が新橋・汐留のミラクル・リナックスさんで開催されたので参加しました。 看板はカーネル読書会ですが、今回のお題はカーネルでなく PostgreSQL の CC optimizer について。 BOというデータベースでの SELECT時のコードがCPUのL1キャッシュに乗り切らないときに、L1キャッシュに乗るサイズに分けてみたらキャッシュヒットして早くなる、という賢い実装があるのだが、すべての場合にBOが有効というわけではないため、BOが有効と思われる状況の場合にBOを使うように optimizer を組む、ということだそうです。(ん、なんかかなりいい加減な説明だ) そもそもBOの実装のソースコードが公開されていないそうで、論文「Buffering databse operations for enhanced instruction cache performance」を参考にして実装されたんだそうで。
現状のPostgreSQLの変更量としてはコメント含めて300行ぐらいで、実時間でチューニング具合を測定してみたところ、最大で3割早くなったとかのレポートがあったりしたのですが、「CPUのL1キャッシュヒットとかの話ならば vtune などを使って測定したほうが、速くなった本当の原因をつかめるかもね」「ある程度実装できたら、学会や発表会などに出て行って、いろいろな人たちの目の当たりになる場所に出したりオープンソースにして、どんどん広げてよ」「300行の改良で、ピークで3割良くなったっていうのはすばらしい」などの意見がありました。 その後のピザ+ビールを飲みながらの時には、マルチスレッドのときのL1キャッシュのヒットとかってどうなのよ、とか、「いまどきのファイルシステムって journal 持っているんだから、あとは write さえ速ければ、RDBMS内での非同期IOとか苦労がいらなくなるの?」とかの技術話で盛り上がっていました。
今後の予定では TOMOYO Linux や RT Linux についてのお話がありそうです。
これまでずっとマイクロソフトの開発ツールから縁遠い世界にいたのですが、そろそろ勉強しないとね、と思い、まずは C#から入ってみることにしました。
汐留のメディアタワーの中にある八重洲ブックセンターが閉店セールで、文具が半額という噂を聞いて、ついでに糊とかバインダーとか購入していました。
昨日(厳密には一昨日)貰ったサーバに、CentOS 4.4 でなく FedoraCore 6 x86_64 をインストールしてみました。
インストール時のRPMパッケージを入れるときに、なぜか1枚目のCD-ROMからパッケージを取り出せずリトライしまくっていました。 インストーラの裏側でうごいている shell でmkdir /tmp/cdrom ; mount /dev/hda /tmp/cdrom とかやった後に rpm パッケージのインストールの再開をしてみたところ、すんなりといきました。 最小構成にしていたので、 FedoraCore のインストールCDの6枚中1〜3枚で終わりました。
インストール後に yum update とかやってみたら、すげー量のパッケージのヘッダとってきて、こんなことに
Transaction Summary ============================================================================= Install 10 Package(s) Update 380 Package(s) Remove 0 Package(s)
Total download size: 533 M Is this ok [y/N]:
速攻でNを選択。(笑) Firefox とか Gnome とか入りまくっていたので削除する方向で。 ある程度きれいになってからアップグレードかけてみます。
削除するパッケージを選択するのに、いちいちコンソールでコピペするのも過酷なので、下のようなコマンド使ってインストールされている rpm パッケージの一覧を取り出して、消したいパッケージだけファイル内のリストに残していくって感じで消していきます。
rpm -qa --queryformat '%{name}-%{version}-%{release}.%{arch}\n' > list
この中の --queryformat ですが、rpm package のリストを出力させるときの書式が指定できます。 この場合、名前・バージョン・リリース番号.アーキテクチャ な形式で。 というか、rpmって同一名で違うアーキテクチャのパッケージが入るようになっているのね、これで i386|i486|i586|i686 と x86_64 の同一名のパッケージのインストールが実現されているのですね。 昔の rpm 触っているときから確実に進化しています(感動)。
どこかから coss の調査してみてはどうよ、といわれたのでちまちま調べることにしてみました。 HTTPなどのキャッシュサーバとして用いられている squid に、coss (Cyclic Object storage system) というキャッシュの記憶機構がついており、これのパフォーマンスが良いのって本当かよとか yamazさんのところで語られている のですが、この文章のなかにこんなやり取りが
xxxxx : 3年ぐらい前、apacheをプロファイリングしたら、select()の次にopen()がコストを食ってました。で、そのときは、open("/home/xxxx/hoge/hoge/hoge.gif") とかしたとき、/home, /home/xxxx,...のディレクトリファイルを読みに行って、そこでDISK IOが詰まってるんじゃないか?と思ってました。
yamaz : なかなか説得力あるなw
これのなかの、そもそもディレクトリ階層的に深いところにあるとパフォーマンス落ちるのかどうかを調べてました。 対象のシステムは FedoraCore6 (Linux kernel 2.6.18-1.2798.fc6) というものです。
まずは、こんなPerlスクリプトでディレクトリを適当に掘ってみました。
#!/usr/bin/perl
use Digest::MD5; # set dirname entries my @dirnames; my $depth = 10; my $num_in_dir = 3; for (my $i = 0; $i < $num_in_dir; $i ++) { push(@dirnames, $i); }
mkdir ("./nest"); make_nest_dir("./nest", $depth);
sub make_nest_dir ($$) { my $curdir = shift; my $curnestnum = shift; $curnestnum -= 1; if ($curnestnum) { foreach my $each (@dirnames) { my $dir_mk = "$curdir/$each"; if (!mkdir($dir_mk)) { print STDERR "Can't make directory($dir_mk) : $!\n"; next; } make_nest_dir($dir_mk, $curnestnum); } } system("touch $curdir/file"); print "make : $curdir\n" }
そすると、こんな感じのディレクトリが nest/ 内にできます
0/file 0/0/file 0/0/0/file .... 0/0/0/0/0/0/0/0/0/file 0/0/0/0/0/0/0/0/1/file .....
この状態で shell の glob の wildcard を使って任意の数のディレクトリとか取ればよい状態にします。 たとえば 0/?/?/?/?/file と 0/0/0/0/0/?/?/?/?/file でのファイルの open/close をジャンジャンやらせた時の時間の比較をすると。 ちなみにこんなコード使って、open|close の繰り返しをしてみました。
#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <errno.h> #include <stdio.h>
void usage (){ printf("openclose_test [count] [files....]\n count: number of open/close for one file\n"); } int main (int argc, char** argv) { int loopc = 0, fd, i, j; if (argc < 3) { usage(); exit(1); } loopc = atoi(argv[1]); if (loopc < 1) { usage(); exit(1); } for (i = 0; i < loopc; i++) { for (j = 2; j < argc; j++) { fd = open(argv[j], O_RDONLY); if (fd < 0) { fprintf(stderr, "Failed to open %s : %s\n", argv[j], strerror(errno)); continue; } close(fd); } } }
で、これで、nest/?/?/?/?/file を 16384回 open/close した場合は8.381秒ぐらいで、nest/0/0/0/0/0/?/?/?/?/file を 16384回 open/close した場合は11秒ぐらいでした。 ディレクトリの深さによってパフォーマンスに変化あることは確かなようです。
昨日は朝から青物横丁で打ち合わせしたり、そのまま大井町まで徒歩で移動してまた打ち合わせしたり。 疲れたので一旦帰宅して1時間ほど休んで、今度は六本木一丁目に打ち合わせに。 このハードスケジュールな移動っぷり、まるで営業マンだ。(笑) その後の晩御飯は3人で溜池山王あたりで飲んだり。 帰りは銀座線の渋谷行き最終→赤坂見附で乗り換え→丸の内線の新宿行き最終という具合だったのだが、連れてかえる人が赤坂見附でトイレ行ってますので横井さん先行っていてください、ってことで先に行ったのだが、横井の乗った電車が新宿行き最終列車で、彼はどうしたのだろう。。。 月曜日にでも詳細聞いてみますか。 2件はしごして3人で全部で1万円だったので、一人約3千円コース。 2件目の1品500円のお店は雰囲気よく値段もお手ごろでよい感じでした。
土曜日は超マッタリと。 夕方までフラフラフラっとして、プクプクとインターネットやったり適当に晩御飯食べたり。 ジムに行こうかと思ったが、出るのが面倒になり、まだ家から一歩も外に出ないで、気づいたら夜中の0時過ぎていますし。(笑)
休み中にやろうと思っていた Rails を使いながらのアプリケーションの開発がまったく進んでいなかったので、ちまちまと作り始めました。
まだRailsの書籍などを一通り目を当しているわけでないので、かなりごく一部だけ見て話をしていますが。 なんか、DBのモデルやらビューやらコントローラーがホゲホゲとかいうところだけ説明されているドキュメント類が多い気がするんですが。 たとえば view で使う rhtml でのが erb.rb で処理されているっていうことを知らなかったので、 <% ... %> と <%= ... %> の違いとか、これを処理する部分についての説明とかが文章で見当たらず、なんだか苦労しております。 結局、erb のパースエラーのメッセージを見て、erb という部分が処理しているのか、ということを理解。
本屋にでも行ってみて、適当な本を探してみます。
この一ヶ月間、目的は休養ってことなのですが、じっとしていられない私の性格上、いろいろなお話などを聞く機会を設けるようにしていた。 ここに一応のことをまとめてみた。
各種インターネットサービスで「広告収益モデルで」と言う場合が多いのだが、なかなか広告収益モデルもそうは簡単に卸さんぞという具合だ。 最近だと Google AdSense によって個人のサイトに広告張って個人が広告収益を得ることができるのだが、これはGoogleが検索エンジンと広告配信システムを組み合わせたという革命的な組み合わせによってできたのであって、そもそも検索エンジンでクロールされないようなページでは Google AdSense なんて難しい。 んで最近言う「新しいサービス」というもののほとんどが、Web2.0でのマッシュアップみたいなものばかりなので。 んで、検索結果ページ用の広告というのも、あることはあるんだか、それなりのページビュー数・ユニークユーザー数がないと、広告配信業者は腰を動かさない。 広告主は広告に対して、広告を見た後の消費活動などの影響を期待して出稿するので、それなりの影響を受けるためには、それなりの広告への印象(インプレッション)が必要になり、それなりのページビュー数とユニークユーザー数が必要になる。 んで広告収益を必要とするならば、想定するページビュー数やユニークユーザー数などを見積もらなければならない、という意識が必要になる、という説明をしたり。 そういうところからも、何か新しいことをしたい人たちの仲間に入って、協力させていただけるところがイッパイあるんだなと実感。
というところでいくと、この2.5年間は無駄だったかどうかって考えると、まぁ無駄ではなかったのかもしれない。 コンピュータの技術者やりながら、広告業界の片隅で過ごさせていただいた身としては、いろいろな経済活動の一部を見せていただいたわけだし、今後の私の仕事に参考にさせていただくネタはイッパイ頂戴したと思う。
自分がフリーランスの技術者として働いた場合、履歴書+職務経歴書に書いてあるだけの内容で月オイクラ万円で使ってもらえますか、と調べてみたところ、まぁまぁそこそこな金額になった。 単純に月額×12で年間にもらえる額だけで計算すると、今の会社で働いている金額以上に貰えそう、ということだけはわかった。 今の会社の給料が安いとはいっても、まぁ腰掛していても貰えますという低リスクな状況などを考えれば、妥当な金額なのかもしれないが、それで納得するかどうかは別話ですね。 ただフリーランスで働くには、さまざまな物事が自己責任になり、それなりのリスクやデメリットもあるので、そこんところきっちりと理解していかねば。
自分は今後どのような仕事をしていきたいのかを真面目に考える時間にもなり、いくつかの道をたどるのかな、というのが見えてきた。 いづれのコースにしても、単に技術をバリバリと身に付けるだけでは全然ダメで、むしろさまざまなことの調整力とか、売り込む営業力とか、非技術な部分を伸ばさなければならない、というのが課題なようです。
ってなかんじで、いろいろとスッキリしつつあります。 問題を消化する・回避する・順応する、のどれかを行って問題解決しなければならなかったのですが、問題解決はできそうです。
最初のうちはどこから調べ物をすればいいのかさっぱりワケ分からなかったのですが、どこからあたっていけばよいのかだいぶ分かりました。 というかライブラリのコードを斜め読みしながらでないとダメすね。 たとえばこんな感じに
require 'rubygems'をして、 require_gems 'パッケージ名' をすることによって、 /usr/lib/ruby/gems/1.8/gems/パッケージ名/lib の中の .rb なスクリプトを読み込むって具合になっている。 Search Path をうまいことハンドルするかのような@cookies を参照するようにします。 @cookies は hash になっており value 側の取り扱いは、@cookies['keyname'].value という具合にして value を取り出してね。 このやり方は cgi.rb でも同じ、というか cgi.rb のそれを引き継いでいるみたいで。cookies を使いましょう。こんな書き方です。 cookies[:login] = { :value => "XJ-122", :expires => Time.now + 360} 実際の実装については、ActionController::Cookies を見てね。とりあえず、ここまでの調査などで、はてな認証で認証してもらって、はてなのユーザIDとかユーザ画像とかを取り出して、自分のドメインのクッキーに焼くぐらいのことができるようになりました。 いままでに分かったことは、プライベートなWikiにまとめて、あとでドカっと公開できれば、なんて思っております。 あとはDBを絡めたところだな。
って考えると、いまさら参考書必要なのかなぁ。。 わからないところは、だいたいは自分でGoogleで検索して調べたし、それでも意味不明なものについては、そこそこ自分で調べちゃったしね。
Railsの練習ってことで、各利用者さんにアカウント作ってもらって、自分用のリストみたいなのを編集してもらったりするサービスを作っているのですが。 いちいちユーザ登録なんてしてもらうの面倒くさいし、おいらが他人様のパスワードを預かるようなリスク背負ってまでサーブする気がないので、ここんところ省力化できないかと思ってまして。 例の openpass も、そんな俺みたいな人のために考えているんですけど。 で、このブラウザはこのユーザ名だ、とかいう、いわゆる識別 (Identify) だけをしたいんだけど、なんかいいのないかって見ていたら、OpenidLoginGenerator という OpenIDの機能を利用する gem package があるではありませんか。
やり方はマニュアルにあるとおりで、「gem install openid_login_generator」してパッケージをインストールして、Rails の作業ディレクトリで「./script/generate openid_login auth」と generate かけて、作業ディレクトリ内にできる README_LOGIN にある方法で database の テーブル「user」を作ってください。 このコマンドだと authという名前の controller で OpenID 認証の機能ができます。
ユーザのアカウントの作成ですが、OpenIDの認証をやっているところの、たとえば videntity.org とかでアカウント作ってみてください。 たとえば私の識別として masaruyokoi.videntity.org とかいうのを作りました。
ってことで、これから作るサービスは OpenID 対応ってことで。 といか、OpenIDとかSAMLの調査、ぜんぜんやっていないな orz。
って、この作業記録をWikiに書きながらやっていたのですが、保存するの忘れて終了。。 orz
・ いけだ [これで痩せて帰ってくるほうがおかしい。何故か洋食気味>横井家]
・ まさる [おせち、あったんだけど、あまりにも普通だからさ。]
・ みぞ [大型自動車免許に関連してここが参考になるといいですが。 http://unlucky.hustle.ne.jp/]
・ まさる [昔見たことある気がしますw]