朝、電話があった。今日の午前6時過ぎに祖父が他界したそうだ。入院したのは知っていたけれど、見舞いにも行かず、死に目にも会わず、薄情者。おまけに悲しむ様子すらない自分を見ると、本質的に冷たい人間なんだろう。通夜には行かず、葬式のみ出席しようと思う。
通夜に出ろと言われたので、明日・明後日と会社を休むことにした。良い歳をして情けないけど、通夜も告別式も作法を知らない。一夜漬けで調べておかないと。
メモ。「Expectの書き方」。たまにしか使わないので、すぐ忘れてしまう。
こんな日にトラブルか。帰れるのかな。
日が変わったけど、いまだ帰れる状況にない。朝までかかる予感。
AM3:48。まだダメくさい。こちらでがんばることができないだけにもどかしい。
AM3:55。解消したか?
AM4:53。終わりそう。
AM5:26。問題は無くなったであろう。帰るか。
タクシーの深夜料金は、PM11:00〜AM5:00なのか。んじゃ、いまは深夜料金じゃないのな!
AM6:00。今度こそ帰ろう。
「Clam Antivirusに関するメモ」を参考にインストールをしてみた。
clamd デーモンを稼働させ、clamdscan コマンドで検出テスト。.zip / .gz / .bz2 な圧縮ファイルからは検出できるのだが、.lzh ファイルからは検出できない。clamdscan --lha とオプションを付けてもダメ。なぜだなぜだなぜだー!と悩んでいたら、clamdscan コマンドでは、.lzh には対応していないというオチ。デーモンで lha などの外部コマンドを使うのは、セキュリティ的に危ないってことみたいだ。ま、それならそれで良いんだが、だったら「無効なオプション」とかってエラーを出して欲しいなぁ。
で、デーモンと通信しないスタンドアロンな clamscan コマンドに --lha オプションを付けたらちゃんと検出してくれた。
「マイネットワークからワークグループのアイコンをクリックしても何も出てこない」だってさ。Windows ネットワークのことをオレに聞かれてもなぁと思いつつも仕方なく対応、、、するが、よく分からんので検索したところタイトルのページを発見。マスタブラウザが稼働しているマシンの設定が怪しげだったので修正して再起動。
さて、これで直るのか?
Mac OS X上で動くバーチャルPC環境が!ということで、早速会社のiMacにトライアル版をインストールしてみた。こういったソフトで話題になってるのは、ゲストOSとして「WindowsXPが動く」ってことだけど、そこはソレ、オレはLinux(CentOS 4)を入れてみた。
VM系では良くあるように、インストールには結構時間がかかった。「残り30分」と表示されてから1時間以上はかかったんじゃなかろうか。
でも、起動してみるとデスクトップ環境としても結構使えるというか、フツーに使える。ネットワークも使える。これならテストサーバ用途だったら充分以上に使えそうだよ。
な、なんか自宅のMac環境もIntel版に変えたくなって来たなぁ。。。
いつもより少しだけ早い21:30頃に会社を上がって、スーパーでお買い物。家に着いて、部屋着に着替えて、さて餃子でも焼くか!と準備してたらケータイが鳴った。電話に出てみると「いまどこにいるんすかぁ?」というだいぶ酔っぱらった感のある部下の声。
「家だけど?」と答えると「来てくださいよぉ」と。更に「ほらお前も言って!」と別の人間にも変わったりも。
面倒くせーなぁという思いもありつつ、理解ある上司のフリをするのも良いかぁ(笑)と考えて、ちょっと顔出しに出たら、、、電話をかけてきた当人は結構デキ上がってて、半分寝てる感じだった。
その状態で会社についてイロイロ話したけど、さて、どれほど覚えているものか?
ひと晩寝たら、RAID5 の構築が終わっていた。
# cat /proc/mdstat Personalities : [raid6] [raid5] [raid4] md0 : active raid5 sdd1[2] sdc1[1] sdb1[0] 976767872 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU] unused devices: <none>
ということで、フォーマット。ext3 でいいよな。
# mkfs -t ext3 /dev/md0 mke2fs 1.39 (29-May-2006) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 122109952 inodes, 244191968 blocks 12209598 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=0 7453 block groups 32768 blocks per group, 32768 fragments per group 16384 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848 Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 21 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
マウントポイントを作って、マウント。
# mkdir /mnt/data # mount /dev/md0 /mnt/data # df -h Filesystem サイズ 使用 残り 使用% マウント位置 /dev/mapper/VolGroup00-LogVol00 71G 2.9G 64G 5% / /dev/sda1 99M 20M 75M 21% /boot tmpfs 1.2G 0 1.2G 0% /dev/shm /dev/md0 917G 200M 871G 1% /mnt/data
約900GBか。まー、こんなトコだろう。
参考になるかと思って。
優れた開発者を見つける為に「こちらから出向く」や「インターンシップ」、「自分のコミュニティを作る」といった内容は参考になった。ただ、今のところ新卒採用をしたことが無いので「インターンシップ」は未知数。やってみたいけど、どうやって人を集めれば良いのかもわからん。
「自分のコミュニティ」は大変だよなぁ。少なくともオレ自身はスゲー人間じゃないし、カリスマ性もないからなー。
ところで、この本は「いかに優秀な人を見つけるか」に主題が置かれていて、「いかに優秀な人を育てるか」という点はあまり記載がない。確かに優秀な人ばかりを雇える状態なら、それが理想な気もするけれど、そう簡単にはいかないのも現実だと思う。
そのような現状もふまえ、最近では「育てる」方法に興味がある。「優秀な人だけを集める」ばかりでは、企業の体力に限界が来るのではないか?とも考えている。息切れしちゃうんじゃないかなって。
では、実際にどうやれば良いのか?までには、まだ落とし込めていないのだが、おそらく似たような考えを元に新卒教育を行っている、株式会社ディノの「スタートアップ研修記」には興味津々。新人教育する方もされる方も頑張って頂きたい。
今日は時間を取って、パンダのナビ周りをいじることにした。目的は次の2つ。
パンダに付いていたのは社外ナビで AVIC-HRZ009GII というモデルなのは前に書いた通り。FIAT 純正には 2DIN マウントキットは存在していないようなので、このナビのマウントも社外品だと思われる。
まず、ナビの周りのカバーを取り外した。これは、エーモンのパネルはがしを、少しだけある隙間に差し込み、ジワジワと取り外した。
するとネジが4つ出てくるので、それぞれ取り外して、ナビ本体をググっとゆっくり引き抜く。勢い良くやり過ぎるとケーブルが破損しそうな気配を感じるので、ゆっくりゆっくり。
そして、丸ごと引き抜いたら、先日、メーカーから回答があった「底面シールで製造番号を確認」というタスクを完了させた。これでオンラインでナビのバージョンアップ手続きができるようになった。
iPhone / iPod ケーブルは、ナビのオプション紹介ページだと、CD-I020 が紹介されているんだけど、これは iPhone の充電には対応していないらしい。また、現在は入手困難のようなので、後継と思われる CD-I022 を使った。
エーモンの配線ガイドをナビを抜いたところへ通して、 iPhone / iPod ケーブルを通す準備をした。
ディーラーの担当さんから「ケーブルを通すなら助手席側に抜くと良いですよ」というアドバイスを貰っていたので、それを信じて助手席側へ抜くようにした。ちょっと手こずりはしたものの、配線ガイドは比較的アッサリ通すことができた。
次にケーブル本体を通したんだけど、これは配線ガイドより苦戦した。iPhone / iPod 用の接続端子が大きいのと、ケーブル本体が太いので、途中で引っかかってしまって、なかなか出てきてくれなかった。
これ、配線ガイドを使ってなかったら、うまくいかなかった気がする。。。
iPhone / iPod ケーブルが通ったので、ナビ本体へ接続するところ。これは挿すだけで良いのでラクチン。
よっしゃー、終わったー!と思ったものの、ここから先にもまだ困難が。。。
ナビが収まらない。
どうも、ナビを格納する場所のスペースよりも配線の量が多くてギチギチになっている感じ。ちょっと強めに押しても動かない。
いったんナビを引っこ抜いて、後方のケーブルをなんとなく整理して押し込んで、引っこ抜いて、整理して、押し込んで、、、ということを何度か繰り返して、あと数ミリ頑張れば収まりきる!というところで最後は力技でネジ締めしてしまった。まぁ、動いているので大丈夫だろう。。。
これで iPhone5 を接続し、充電しつつ音楽の再生をすることができるようになった。
曲の選択やらはナビからもコントロールできた。
これで長時間ドライブでも好きな曲を聴き続けられるわー。
そして、135分をかけてナビのバージョンアップも完了。
新東名高速のデータも入っているらしいので、あっち方面へ行くのも安心だわー。
Amazon で詳細を見たことがあった書籍「入門 React」の広告が Facebook で出てきたので、「そういえば Ebook 版が出ちゃったりしてないかなぁ!?」と思って、試しに O'Reilly のサイトへ行ってみたらアッサリ出ていた。しかも、PDF の固定レイアウト版だけでなく、ePub / mobi のリフロー版も一緒にある。
この本の存在を知ってから、「どうせ Ebook 版は当分でないだろうから、書籍版を買って勉強するか」くらいのモチベーションでいたので、すぐにポチってしまった。
書影が欲しいので Amazon へのリンク貼るけど、いずれ Kindle 版が出たとしても O'Reilly の Ebook の方が自由だからそっちで買うほうが良いよ。
昨年末に元クロコスメンバーが集まった忘年会の時に「esa.io の Markdown ヘルパーが便利でさ」という話を力説していたら、「じゃあ、それ Crowi に付けてよ」と言われて、頑張って pull request を作った。
その時は、esa.io の Markdown ヘルパーを Chrome 拡張化した「esarea」のソースコードをパクって参考にして書いたのであった。
と、ここまでが前提。
そんな経緯もあって、今度は「もう少しヘルパーを拡張したい部分があるんだけど作ってよ」的な話を振られて、ひさしぶりの Crowi 活動を行なった。
これで何をしているかというと、次のような動きになる。
-
などの Markdown のマークアップ記号がある-
なら全ての行がリストとして入力されるここを読むより、pull request 内の GIF アニメを見てもらうと、挙動が把握しやすいと思うけど。
動作としては、Clipboard API and events を使って、paste
イベントの発火で処理をフックしている。ペースト位置の行を取得して、その行頭の文字を調査、規定の文字だったら、ペーストするテキスト内の改行位置にその行頭文字を加える、というような流れ。
「ペースト位置の行を取得」という処理は esaera から移植した時に作ったものをそのまま利用している。
ちなみに Mac の Chrome, Safari, Firefox では試したけど、他のブラウザでは試してないので、動かないブラウザもあるかも知れない。
最近は JavaScript をあまり書いてなかったので、これ書いてて楽しかった。
▽ ウラウラ [近親者でも、よく会ってなかったりするとあんまり実感わかないものだよね。日常に突然「死」を突き付けられてもピンとこない..]
▽ スズキシゲオ [近親のものは通夜から交代で夜伽の番で寝られません。ろうそくを絶やしてはいけないのだな。でも通夜や葬式は地方ルールが多..]