この日記にはツッコミを入れられます。 ツッコミを入れたい日付をクリックすると、フォームが現れます。
xreaでtDiaryを使う方法はxrea.com で tDiary を使う方法やインストールメモやXREA + tDiary + Namazuをどうぞ。
ssh-agent zshした後、zsh が終了した時に子プロセスである ssh-agent は終了するだろうか。終了しないなら、どのような時に終了しないか。
という話。
pstree -ap $USERであらかじめssh-agentのプロセスIDを確認しておいて、普通にzshをexitして、pstree -ap $USERを確認してみると、まだssh-agentが残っていた。そこでkillしようとすると「そのようなプロセスはありません」と言われてしまった。そこで、exit後に何度かpstree -ap $USERを実行してみると、しばらくするとssh-agentが終了しているように見えた。
ということは、定期的に親プロセスの存在を確認して、いなくなっていたら自分も終了しているように見える。
実際にssh-agentのソースを確認してみると、SIGALRMを使って10秒間隔でチェックしていた。
とりあえず大きく変えずに対応することを優先させてごまかしていたuse_ssl_tlsというのは、ちゃんと分離されたらしい。
SMTP over TLSのデフォルトポートですが、587はIANAのポート番号一覧を見るとわかるようにsubmissionポートです。つまり、Message Submission (RFC2476)のMSA用のポート番号で、Outbound Port 25 Blocking (OP25B)の関係で広まってきているようです。
で、デフォルトポートはどうすればいいかというと、25でも587でも良さそうな気がするのですが、実用上は587の方がSMTP over TLSを使う可能性が高そうだから、あえてどちらかにするのなら587でいいんじゃないかなあと思っています。
UTF-8の環境に少しずつ移行していて、emacs -nwなどで文字幅問題(▽などが半角扱いになってずれる問題)に困っていたけど、mltermはcol_size_of_width_a = 2を~/.mlterm/mainに追加したら解決したように見える。
col_size_of_width_aはCtrl+右クリックで出てくる設定で変更できる項目にはなさそう。
今日は早めに移動したら、まだ会場の会議室に入れないらしく、5階の自動販売機前に既にきている人が何人もいたので、入れるようになるまでそこにいた。
入ってから、とりあえず前の方の席を確保。受付は混んでいるということで、しばらく待っていて13時前に受付に行ってみたがやっぱり混んでいた。あらかじめRubyist SNSで受け付ける段階である程度振り分けて複数の受付窓口を用意しておく方が良いのではないかと思った。
最初は「アジャイルにデータモデリング」。本格的な業務システムについては全く知らなかったので非常に勉強になった。
次は「Rails Chat の仕組みを読み解く」。後ろでは「Rails 環境セットアップ」をやっていた。プレゼンの間実際にRails Chatにつないでみていた。
最後は「Rails 初心者レッスン第 2 回 − ActiveRecord 入門」。実際に試しながら聞いていた。script/consoleで日本語が入力できなくて困ったけど、後で調べてみたら、~/.inputrcでmeta関係の設定をしていないからだった。
懇親会。次期Rubyist SNSのRails実装の構想とか。
最後は帰る人とカラオケと喫茶店にわかれた。喫茶店に行って前回話をしていたRuby Quizのシステムの自分の案の一部を実装していたのを見せてみたり、またDSをやっていたり。
その後はまっすぐ帰った。
Ruby Quizのシステムの自分の案
というのは3次会(喫茶店)のクイズの回答システムについて討論の時の話。
イベントでの初プレゼン。事前に思っていたよりもダメな感じだった。
Windows上のVMwareの中のUbuntuでプレゼン。直前にWindows側の解像度をVMwareの中の解像度と同じ1024x768に変更してみたらプロジェクターにつながったら表示位置が変だったので、あわてて解像度を変更して最大化し直し。そのときの操作ミスでちょっと亀が進んでしまったので、rabbit再起動。という感じで出だしからミス続き。
発表内容は、伝えたいことについてわかっている人にはわかるけど、知らない人には伝わらないというダメパターンになってしまった気がする。
いいわけをすると、控え室がたばこ臭くてかなり参ってました。
入場テーマ曲はそういう感じのつもりで選んでました。
LL Ringの次の日ということで、せっかくなのでRails勉強会@東京に初参加。
「LL Ringの家計簿アプリの中身を詳しく」と「LL Ringを振り返る」と「Drecom Award on Rails受賞作品を読んでみる」のセットになっていたセッションに参加。
かずひこさんが司会進行役。
ポジションペーパーは用意していなかったので、その場で適当に書いてrabbitで。プロジェクターにつなぐとLL Gongの時と同じようになんか変なことになって、解像度を変えたりしていたら、一応表示された。元々の解像度がSXGA+(1400×1050)というのがトラブルの原因のような気がする。そういえば、今まではセカンダリディスプレイで試していたのに、LL GongやRails勉強会ではFn+F3で切り替えて表示しようとしたのが悪かったのかもしれない。今度どこかでプロジェクターとの相性をちゃんと調べておいた方がよさそう。
まずLL Ringの時と同じように家計簿アプリの説明プレゼン。LL Ringの時になかった話(雑談?)としては、rake statsのLOCはコメントや空行などをのぞいた行数で、LOC/MはLOCをMethodsで割っても数が合わないので、defやendの行をのぞいた行数ではないかという話をしたり。
LL Ringの全体の話は、セッション内容と参戦者の一覧などを見ながら簡単に。
Drecom Award on Railsについては、小槌のソースをのぞいてみたり、応募作品一覧のページに「(順番はリロードするたびにランダムに変わります。)」と書いてあるのに、一般投票が終わった今はランダムではなくなっているという話があったり。
最後にポジションペーパーに書いてあったSimplyRestfulプラグイン、map.resourcesの話。わざわざセミコロンを使って醜い感じにしているのは、あまり使ってほしくないからではないか(AjaxなどでPUTを直接使えばeditの画面は不要なのではないかなど)という話も。
「ソーシャルブックマークを作る」に参加。あまり進まず。
かずひこさんは飛行機の時間の都合で途中で帰ってしまった。
gettext対応を後からするのは大変なのでどうにかしたいという話とか。
Tryが多かった。Podcastingは是非やってほしいと思った。参加登録のRubyist SNSへの移行については、新Rubyist SNSが出来てからということになったようで、Rails勉強会@東京の人にも開発に参加してほしいなあとかいう感じのことを言っておいた。
18時台の新幹線に乗って帰ったので、懇親会には参加せず。
1.8.5にあげたらencoding="euc-jp"になっているのに丸数字を含むRSSがRSS::Parser.parse(text, false)の中でIconv::IllegalSequenceになるようになってしまった。
ちゃんと直すのは時間がかかりそうだったので、とりあえずeuc-jp-msに書き換えてからRSS::Parser.parseに渡すようにした。
「LL Ringアンケート(来場者用)」をやってみた。最後の「Save」と「Submit」って何? とりあえず「Submit」を押したら送れたみたいですが。
[ruby-cvs:18002]の「* object.c (nil_to_s): no longer returns empty string but "nil". [ruby-talk:210205]
」
これは影響が大きすぎて厳しいような気がする。
ちょっと試しただけでも、make test-allでのエラーが増えてるとか(これは仕様変更ならいつもあるけど)、irbがCtrl+Dで終了出来なくなるとか(exitで終了できる)。
[memo:9096]で知った。
「6) 全角文字」や「7) 特定のUnicode文字」はNTFS(? Windows NT系?)でも同一視される文字なのかな。
emacs上のddskkとdbskkd-cdb(+netkit-inetd)で
変換しようとすると改行だけになってしまって、変換できないどころか、
元のひらがなのままにさえならなくて困っていた原因をがんばって調べてみたところ、tinycdbのバグが原因だった。
最終的にはfprintf(stderr, "...", ...);を埋め込みまくって原因を突き止めたけど、/usr/sbin/dbskkd-cdbを直接起動すると大丈夫とか、追いかけるのが大変だった。
# Japanese translations for PACKAGE package # PACKAGE パッケージに対する英訳.
✑ という2行が入っていてあやしいなと思いつつ、msgstrを少しだけ埋めて、rake gettext:update_poをしてみたら、
po/scheduler.pot ... 完了. po/ja/scheduler.po po/ja/scheduler.po:21:22: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:23: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:24: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:25: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:26: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:27: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:28: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:29: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:30: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:32: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:33: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:34: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:35: 不正な複数バイトのシーケンス po/ja/scheduler.po:21:36: 不正な複数バイトのシーケンス msgmerge: 14 個の致命的エラーが見つかりました
✑ という感じになって、po/ja/scheduler.poが0バイトのファイルになってしまった。
何度か試して調べてみたら、"Content-Type: text/plain; charset=UTF-8\n"なのに、頭のコメント部分がlocaleと同じeuc-jpになっていて、エディタでそのまま編集したら、msgstrもeuc-jpになっていたのが原因だった。
✑ yanagi [回答を一時保存する、というもののようです < Save]