丁稚な日々

Rubyで遊んだ日々の記録。あくまで著者視点の私的な記録なので、正確さを求めないように。
Rubyと関係ない話題にはその旨注記しているはず。なので、一見関係無いように見える話題もどこかで関係あるのかもしれません。または、注記の書き忘れかもしれません...

[直前] [Top]

Apr.1,2014 (Tue)

Revision: 1.1 (Mar.31,2014 23:15)

おしらせ

_ オブジェクト指向スクリプティング言語slapの新バージョンが1年ぶりに公開されました。
なんと衝撃の仮想マシン実装やソケット対応などが盛り込まれています。作者もびっくり!

Jul.16,2013 (Tue)

Revision: 1.3 (Jul.16,2013 15:27)

小ネタ

_ 次のようなプログラムを考えてみよう。
とりあえずファイル名はconsole.cとでもしておく。

#include <windows.h>
#include <stdio.h>

int
WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
    HANDLE h;
    CONSOLE_SCREEN_BUFFER_INFO buf;

    if (!AttachConsole(ATTACH_PARENT_PROCESS)) {
        MessageBox(NULL, "AttachConsole Error", "debug", MB_OK);
    }

    h = GetStdHandle(STD_OUTPUT_HANDLE);
    if (!h) {
        MessageBox(NULL, "GetStdHandle Error", "debug", MB_OK);
        return 1;
    }

    if (!GetConsoleScreenBufferInfo(h, &buf)) {
        MessageBox(NULL, "GetConsoleScreenBufferInfo Error", "debug", MB_OK);
        return 1;
    }

    MessageBox(NULL, "OK", "debug", MB_OK);

    return 0;
}

要するに、コマンドプロンプトから起動して、そのコンソールスクリーンバッファの情報を取得するだけのプログラムである。
ちょっと特殊なのは、コンソールアプリとして作られているわけではなく、GUIアプリとして作られていて(ウィンドウを一切作ってないけど)、親(*1)のコンソールにアタッチしていることくらいである。

_ では、お手元のVC2013あたりを使って試してみよう。
そんな新しいものがなければ、VC2008くらいでも、まあよい。

C:\> "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat"

C:\> cl console.c user32.lib
Microsoft(R) C/C++ Optimizing Compiler Version 17.00.50727.1 for x86
Copyright (C) Microsoft Corporation.  All rights reserved.

console.c
Microsoft (R) Incremental Linker Version 11.00.50727.1
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:console.exe
console.obj
user32.lib

C:\>

ふむ、コードに問題はないようである(user32.libとリンクするのはMessageBox()のため)。
では、できたconsole.exeをそのままそのプロンプトから実行してみると...

_ あれー、GetConsoleScreenBufferInfo Errorって出るよ?

_ ここで、おもむろにもう一つ新しいコマンドプロンプトを開いて、そこからconsole.exeを実行してみよう。
今度はOKというダイアログが表示される。
なんじゃこりゃー!!!

_ さて、ここではいったい何が起きているのだろうか?

_ それでは、検証のため、次のようなバッチファイルを用意してみよう。名前はtest.batとでもする。

call :end > nul 2>&1
:end

これは何をしてるかというと、標準出力をNULに、標準エラー出力を標準出力に(つまりNUL)にそれぞれリダイレクトした状態で、自分自身(=test.bat)のラベル:endcallする、というものである。
自己ラベルcall処理が気持ち悪い、と思う方もいるかもしれないが、そこは今回の主題ではないので、空のファイルfoo.batでも用意していただいて、:endcallする代わりにそのファイルfoo.batcallすることにしてもよい。

_ では、新しいコマンドプロンプトを開いてみよう。
念のため、もう一度先ほどのconsole.exeを実行しておく。
うん、OKというダイアログが表示されるはずだ。
その上で、test.batを実行してみる。
もちろん、特に何もせずに再びプロンプトに制御が戻ってくる。
そこでもう一度console.exeを実行すると... うわー、GetConsoleScreenBufferInfo Errorだー!

_ というわけで、実質的には何もしないはずのtest.bat実行の前後で、これとは関係ないはずのconsole.exeの挙動が変化してしまうわけである。

_ ま、ありていに言って、cmd.exeかなんかのバグである。

_ なお、先ほど、console.cをコンパイルしたコマンドプロンプトで失敗していたのは、実はVC2008以降のvcvarsall.bat、というか、そこから辿った先で実行されるvsvars32.batというバッチファイルの中で、test.bat相当の処理が実行されていたためである。
なお、VC2005まではこの処理がないので、test.bat相当の処理を別途実行するまでこの問題は発現しない。

_ バグの原因を考えると、要するにcallを実行したときにリダイレクトが絡むとそのためにcmd.exe内の出力先関係の状態が一時的に変更されるのだけど、それを戻すのが正しくない部分があって、標準出力ハンドルの指すものが失踪している状態になっているのではないかと思われる。

_ なお、回避策だが、console.cのGetStdHandle()の引数をSTD_ERROR_HANDLEに変更すればこの問題はおきない。
どうせSTD_OUTPUT_HANDLESTD_ERROR_HANDLEが指すはずのスクリーンバッファは普通は同じもののはずなので、この場合は上記のエラーが生じることを除けばどちらを使っても差異はない。

_ しかしまー、こんな問題を踏むの世界に何人くらいだろうかねえ :)

_ いやしかし、これ4,5年くらい(つまりVC2008以降を使い始めてから)ずっと悩んでたんだけど、ちょうどOSをVistaかなんかに切り替えた後からだったから、それで仕様が変わったせいだろうとずっと思ってて真面目に追ってなかったんだよねえ。
まさかvcvarsall.batがトリガーだなんて思わなかったよ。ははは。

付記

(*1)
この場合は起動元のコマンドプロンプトの、おそらくはcmd.exe。

Jun.6,2013 (Thu)

Revision: 1.1 (Jun.06,2013 18:31)

思い出したこと

_ TRICK入賞自作の話なんだけど、思い出した、というか、作成当時のログが見つかったので見てみました。
もともとはRubyist MagazineのIRC上での打合せで、エイプリルフールネタの話をしてたんですよね。
で、その流れで、

00:15:30 <unak> 詩のコンテストみたいなこともやってたよね、Perl。
00:15:38 <b***e> Haikuね
00:15:46 <unak> Haikuか。
00:16:16 <b***e> RubyでHaiku。
00:17:27 <unak> $ruby.is_a?(Object){|oriented| language}
00:17:47 <unak> ただの文じゃん。
00:18:03 <b***e> oriented 使ってないし。
00:18:19 <unak> ちゃんとこれだけで実行できるのが味噌のつもりではあります。
00:18:36 <b***e> language通るんだ!
00:18:50 <unak> is_a? はブロックを渡されても実行しないので。
00:19:19 <b***e> trueだ。
00:19:35 <ko1_***> わはは
00:19:40 <b***e> なんだこりゃ。
00:19:58 <ko1_***> nil も Object だしね

てな感じで、「RubyでHaiku」と言われてからわずか71秒で、しかもいろいろ推敲とかなしでいきなり完成してるんですね。
当時の俺ってばスゲー。

_ なお、「ただの文じゃん。」と自作を評価しているのは、字余りなのと季語がないため。

Jun.2,2013 (Sun)

Revision: 1.2 (Jun.05,2013 09:31)

[RubyKaigi2013] +1日 / RubyHiroba2013

_ 日付が変わる頃に起き出して、おもむろにスライド作成開始。
ターゲットはRubyHirobaのLTである。つまり当日作成。
でもまあ、みんなそうだよね。
なんか作り終わったら一昨日の発表よりスライドが多くなったけど、気にしない :)
通して練習して、5分ちょうどっぽいことを確認して、寝る。

_ ……。

_ 起きたら昼だった! またかよ!
とりあえず当日LT枠にリモート申し込みして(cuzicさんありがとうございました)、出発。
会場に着いたら折り紙を勧められたけど、とりあえず中田さんに例のWindowsのコマンド起動のUnicode化の相談をしたり。
Ericに「ここ座れよ」と言われたのはこの時のエピソード。
で、中田さんに作業の全てを押し付けて、自分はスライドの調整したり他の人のLT聞いたりしつつ出番待ち。
なんというか、LT文化もすっかり定着して、みんな訓練されているというか、面白いですね。
とはいうものの、ちょっと眉をひそめる内容のものもあるわけで……というのが案の定別件と絡まって後で大きな話題になるのですが、まあここでは触れない。

_ で、出番。
御題は『「Ruby on Windows」を支えられなかった技術 もしくは 兎と亀はなぜ失踪したのか』。
一昨日より気楽なので、まずまずスムーズに5分間を泳ぎきりました。
たぶん、一昨日のよりはエンターテインメントとしては面白かったんじゃないかと思います。いずれにせよレベルは低いですが。
誰も見ないと思いますが公開しておきますね

_ で、そんなこんなで程なくHirobaも終了。
あまりにも遅刻がひどくてLTしかしてねー!
Microsoftさんまたしてもドリンクごちそうさまでした。
そしてスタッフ・関係者の皆様ありがとうございました。

_ 終了後、そらはー先輩に振られて、taruさん、yharaさんとちょっと早めの夕食へ。俺これが今日の一食目だけど。
なんか久し振りにとんかつ食べたわー。

_ 川崎の書店に行ってみるという二人を見送って帰宅し、かくして、木曜日の夜から始まった私のRubyKaigi2013もめでたく終了したのでした。

_ ……。

_ あれ、なんか一つ忘れてるような……。

Jun.1,2013 (Sat)

Revision: 1.3 (Jun.04,2013 19:45)

[RubyKaigi2013] 3日目

_ 起きたら開始時刻過ぎてた!

_ というわけで、昼前くらいに会場着。
初めて咳さんのセッション聞き漏らしたよ……。
とりあえず、いい時間だったのでHeroku弁当を頂く。ごちそうさまでした。
4階で昨日の資料を公開したりしたあと、下に行ったらささださんが「最後のカレーだよー」と言っていたのでまた貰ってしまう。
結論としては昼に弁当2食分は考えるまでもなく指し過ぎです。芋が、芋が……。

_ 午後は須藤さんのセッションから。
あいかわらずいい話。
テクニカルな話は、その技術がわかってれば(みんな自分の守備範囲はわかるよね?)できます。
エモい話は... うまく話すのはもちろん難しいんだけど、でも自分の経験を話に変える、ということでできる、んだと思います。
でも、思想の話は、これはもう、やってきたこと、やりたいこと、を、思想のレベルに消化・昇華しないとできないわけで。
須藤さんは「いいコードを書くにはどうすればいいか」というテーゼに対する思想を、誰にでもわかる形で説明できる、稀有な存在だと思うのです。

_ 続いてKonstantinのセッション。
非ネイティブの英語はネイティブのよりは聞き取りやすい気がしますよね。聞き取れてないけど。
しかし、そんなことより、いきなり立たされてしかもしばらく座れないといういじめが……。
VHDLやってなくて本当によかったわー(ぉ

_ Hall-Bに移動してTRICK。
僕はさらっと席に座れたんだけど、その後すごい混雑になっちゃってました。
そして、自分の投稿作が入賞していて「マジかよ」みたいな。
自作についてはこの下の解説を読んでもらうとして、他の作品は本当に凄かった。
凄いのはみんな凄いのでいいとして、個人的な好みを言うと、babanさんのAlice、mameさんのpiano roll、shinhさんのpoemが好きです。
たぶん見た目重視派なんですね。
特にpiano rollはうつくしい……。

_ コーヒーブレークタイムにやっとずっと楽しみにしてたワンナイト人狼をプレイ。
みんなが知ってる人狼との違いは、一夜しかないこと、怪盗というトリッキーな役職があること、かなあ(もちろん他にも違いはいっぱいあるが)。
mrkn、nagachika、nari3、nobu、shugo、taru、usaでプレイしたんだけど、いやー楽しかった。
持って来てくれたnari3ありがとー。

_ その後はHall-Aに戻ってaaronのUnfactoring。
何に注目して、何に気をつけて、何を改善していくか、という話だったんだと思うんだけど、丁寧でわかりやすいお話だった。

_ そして続いてzzakの「猫にもできるコントリビュート」。
ぬこかわいいよぬこ!
しかし地道にいっぱいやってて本当に偉い。

_ で、最後にakrさんのキーノート。
いったい会場の何人が付いて行けるのかこれ。でもいいぞもっとやれ、みたいな。
実はこのキーノートについて、matzと前日の懇親会だったかでちょっと話をしたんだけど、「『多様性は善』とは言ってるけど、それにコストがかかることは最初から否定してないから」というお言葉を頂いております。
ここまでやってもらったけど、とはいえ「結局ext/dbm要らないんじゃね?」というのが僕の見解なんだけど、楽しそうだからいいよね!

_ クロージング。
スタッフの皆さん、スポンサーの皆さん、ありがとうございました。
また来年!

_ 終了後、artonさんが車で帰るのに便乗させてくれるということだったので、ありがたくご厚意に甘えさせていただいてさっさと帰宅。
そしてばたんきゅー。

[RubyKaigi2013] 3日目 / TRICK入賞自作解説

_ コメントでも言ったけど、この豪華審査員メンツだと審査員ばかりが投稿するお手盛りのイベントになっちゃいそうな気がしたので、投稿数水増しに貢献しようと思って既作を投げたという…… ごめんなさいごめんなさいごめんなさい。
しかし意外な高評価、特にshinhさんに非常に高く評価していただいたのが驚きでもあり、嬉しくもあり、でした。

_ なおこの式がtrueを返すことについては、個人的には自明過ぎたのと、remarksで言ってる「完全に自己言及的」ってあたりに思いがこもってたつもり、という感じ。
ちなみに、実際はis_an?が欲しいわけではもちろんないし、あと?ってゲシュタルト崩壊するほど見つめてたらnに見えないこともないので、これはこれで悪くないと思ってます。

_ それから、この点は評価されたのかどうかわからないけど、受賞作では唯一、そしてたぶんそんなことする奴いないだろうからおそらくは応募作でも唯一、ruby 1.0でも期待通りに動作するのが実は一番の自慢です。
0.95で動かなかったのはちょっと意外でしたが。

_ 本作はおそらく全応募作でも最短レベルだったんじゃないかと思いますが、これほどの小品が入賞するのは次回以降は難しいんじゃないかなあ。
裏返せば、(既発表作を投入することの是非も含めて)初回だからこそ入賞できた作品だろう、と思います。

_ しかし、これで変態の称号をいただくのって、それはそれで真の変態たちに申し訳ないなー。

May.31,2013 (Fri)

Revision: 1.1 (Jun.05,2013 09:32)

[RubyKaigi2013] 2日目

_ (※6/4追記:日付間違ってたので移動しています)
今日は遅刻せずお台場へ。

_ でもまあ、もう何の余裕もないわけですよ、自分の発表まで。
embossのkrypt話聞きたいなーとか、松田さんのRailsの話聞きたいなーとかとも思うんだけど、ひたすら堪えてスライドの最終調整。
RubyKaigiで話すのは初めてなのですが、今回はチケットもお高いことだし、せめて迷惑だけはなるべくかけないよう、少なくとも時間だけは守ろう、とは思っていて、なので事前に原稿を用意して時間内で収まるように練習もしていたのですが、でもやっぱり見直すと気になるところがたくさんあるわけなんですよねえ。

_ で、たるいさんとかが弁当を2つ食べたりしてるのを見つつ、うわーうまそうだけどこっちは1つ目すらうまく消化できてないわー、みたいな感じでお昼も過ぎて(あ、Herokuさんごちそうさまでした)、Microsoftさんのドリンクを飲みまくりつつスライドいじってるうちに時は過ぎて、通訳チームさんとの打ち合わせ。
打ち合わせ内容は、時間ギリギリなので完全に事前提出原稿通りに話します、すげー早口で行くんでごめんなさい、質疑応答の時間は取れない予定なので大丈夫です、「パチモン」は「The Patch Monster」です、「βが取れる」は「プロダクションとして公開される」です、などという感じでした。
そういえば、僕は通訳された内容を結局聞けてないんだけど、大丈夫だったんでしょうか。
通訳チームさんにお礼も言えてないな……。
今頃だしこんなところ見てないと思いますが、ありがとうございました。

_ その後、私の表番組を発表する諸橋さんを見つけたので、どういう内容を話すのか教えてもらったり。
諸橋さんもやっぱり直前でナーバスだったんじゃないかと思うのに、邪魔しちゃってすみません。
これが結構面白そうで、うわーRubyKaigiは発表者に酷だわーみたいな。

_ さて、会場であるHall-Bは私の発表まで空いてるので、プロジェクターの確認など。
うん、ばっちり映るし、事前に仕込んだアレも動いてるので大丈夫……じゃない、プロジェクターに繋ぐとアレにはこんな問題があるのか! 気付いてなかった!
というわけで慌ててアレをいじり始めたりして、あーでももう時間がねー! しかも直した内容を確認する方法がねー!

_ とかやってる間にいよいよ発表時刻が近づいてきました。
うわ、コミッタがなんか大量にいる。ホーム感はあるけどお前ら諸橋さんの方に行けよ!
とか思ったり言ったりしているうち時間になったので、いよいよ開始です。

_ よし、大丈夫、アレは無事に動いてるわ、と思ったものの、スライドが数枚進んだところで兎と亀が失踪するというアクシデントが発生。
うわーん、もうだめだー、でも止まってる時間的余裕はねー(そもそも直せない)、というわけで、アクシデントは無視して進行。
会場から時々反応があるんだけど、ごめん、アドリブできるように原稿作ってないんだ。
もうひたすら事前練習通りに進めて、進めて、進めて……。
はい、ゴール。時間は……28分くらいか。よし予定通り!

_ というわけで、逃げるように発表台から立ち去って、無事、じゃないけど私の発表は終わったのでした。

_ ちなみに発表資料はこちらで公開しています
今回はスライドにはあまり書かずにいっぱい喋るスタイルだったので、スライドだけ見る人にはなんだかわかんないと思いますが、まあ一応。

_ 喋ってみた感想ですが、なんというか、他の人たちすげーわー、という感じで。
みんなよくあんなに華麗に発表できるよなあ。
私にはプレゼンスターになるのは無理のようです……。

_ 自分の発表後は、放心した感じで続くAzureネタを聞いてました。
って、近永さんがこのコマに登場することは聞いてたけど、え、チラ出じゃなくて半分喋るの!?
しかもOS X使ってAzure紹介するとか斬新過ぎるw

_ その後はnari3のGC話。
あーこれはわかりやすい講義だわー。

_ そして続けてダブルヘッダー近永さんのWho's Who。
一般のお客様はどうかわかんないけど、私たちにはこういうのが一番面白い。
なお紹介された私のコミットログは(いつものことだけど)typoってる奴なので恥ずかしいですぅ……。

_ 今回はLTは聞いてなかった。なんかもういろいろ魂が抜けてた。

_ 最後に何をやるのかさっぱりわかってなかった「Ruby Committer vs. the World」。
結局、前回だったかのRubyKaigiでも同じことをやったような気がするな、って奴だった。
えーと、コワクナイから会場からもっと質問してくれてもいいのよ?
しかし今回は私がみんな(=Git使い)の敵っぽいシチュエーションで、えーと、いやもうそこまでGit嫌ってないから! ないから!
壇上では言い忘れたけど、usagitに皆さんがコントリビュートしてくださると、きっと私もGitに移行できると思います。
あと、えーと、「お前ら移行しろよ」じゃなくて、「俺が移行させてやるから」じゃないとダメですよ。hsbtさんにやらせるのでもなくて。

[RubyKaigi2013] 2日目 / GitHub drinkup

_ 2日目の夜はGitHubさんご提供のdrinkup。
ごちそうさまです。
実質的にはこれがRubyKaigi懇親会として機能した感じですかね。

_ まあなんつーか、ようやく緊張も取れたので、たらふく食べさせて頂きました。
もっぱら(いつものように)コミッタ仲間と群れて話してたんですが、matzのボッチ飯を撮影しようと思ったらあんまりボッチじゃなかったようなのがやや心残り。
僕が一番うまくmatzのボッチ飯を撮影でき……ないですねスマフォカメラなので。

_ で、えーと、端末、というかシェルですが、はい、cmd.exeです。
バックログも結構とれるし、ヒストリ使えるし、ファイル名/フォルダ名の補完は利くし、doskey入れるとaliasとかも使えるし、けっこう便利ですよ。
でも、横幅広げようとか思ったことなかったわー(ぉぃ とか、前から他の人に言われてるんだけどヒストリのインクリメンタルサーチできねーだろとか、実はいろいろ機能不足なのも事実で、でもまあDOS時代から訓練されてるので不便さに気付いてないというオチではあります。
ちなみに非Windows環境ではzshを愛用してます。

_ あと、keijuさんに聞かれたのですが、エディタはxyzzyです。
今使ってるのは派生版(?)のこっちのバージョン
実はxyzzyのxyzzy的機能はまったく使ってなくて、しかもキーバインドとかWindows標準風にがりがりにカスタマイズしてて、お前なんでxyzzy使ってんの状態で、中田さんに「xyzzyならこういうことできるだろ」とか、ささださんに「xyzzyなのにその機能使ってないの」とか言われるんですが、えーと、なんで私xyzzy使ってるんでしょうね?
Common Lisp使えるが最大のメリットだと思うんですが、内部Unicode化されてないのでコピペで文字が化けるとかの悩みもあるので(たしかこれを解消した派生版もあったと思うけど)、本当は私みたいな非Emacsenがわざわざ選んで使うものじゃない気はするです。
でもけっこう好きなのよね、いろんな細かいところが。
ちなみに非Windows環境では(考えるのがめんどくさいので)vimを使ってます。

[RubyKaigi2013] 2日目 / 2次会

_ Herokuが2次会企画するとかいう話なので、発表後の開放感もあって参加してきました。
でもまあなんか疲れててあんまり話してないかも。ごめん。
そして毎度ながらごちそうさまでした(ほんまこればっかやな)。

_ しかし東京の金曜の終電はひどいな!
おかげで体力が……。

May.30,2013 (Thu)

Revision: 1.1 (Jun.02,2013 01:36)

[RubyKaigi2013] 1日目

_ というわけで、幾つかプレイベントをこなしてみなぎってきたところで、2年ぶりのRubyKaigiなのです。
会場がお台場ということで、えーと、つくばくらい遠かったら諦めて現地に泊まるんだけど、そうじゃなかったので、まあ要するに出遅れたり電車が遅れたりして遅刻したわけですが、着いてみたらまだ始まってなかったので結果オーライでした。
(後で角谷さんに聞いたら、おまいらがRubyistの癖に朝から意外なほど参加者が多かったせいで入場をさばききれなかったため、とのこと。)

_ というわけで開始。

_ 高橋かいちょーのお話は、Ruby20周年お誕生日会の時の奴のロングバージョンだと思うんだけど、思えば遠くに来たものですね。

_ なんかここ数日毎日会ってるmatzのキーノート、の前にpixivさんのスポンサーアピールがあって、いい絵だなーとか感心してるところでネタ絵を挟まれて「くっそこんなので」的な笑わされ方をしました。
で、キーノートの方は、どう考えてもテクニカルじゃないエモい話で、でもまあ相変わらずいい話でした。今回は潰すとか言わなかったし。
しかし、「逆逆ポーランド記法」でまたしても「くっそこんなので」的な笑わされ方を……。

_ お昼はHerokuさんご提供のお弁当。
ベジタブルと非ベジタブルがあって、後者を選んだんだけど、前者との違いがわからなかった! いやヘルシーでおいしかったのでいいんですけど。
ごちそうさまでした(毎日こればっか)。

_ 午後はkeijuさんの先史時代の話から。
これもRuby20周年お誕生日会の時の奴の続きというか、ドラで打ち切られた部分なんだけど、当時既に考古学者の間で噂されていた通り、誕生日本当は23日じゃねーか的な……。
でもまあ、後でkeijuさんと話したんですが、言語の誕生日なんて言ったモノ勝ちなので、24日のままで行くようです。

_ その後はしばらく電源確保しつつ明日のスライドの直しなどをもくもくと。

_ しかしhsbtさんのroot話は、すげー助けてもらったりしたので聞かないといけない。
なんかすげータスク積まれてて大変だと思うんですが大丈夫なんでしょうか。とかいいつつ頼るんだけど。
ありがとうございますありがとうございます。

_ 続いて病人ささださんの2.1話、というかRGenGCの話。
実はぜんぜんまだ中身見てないのですが、なんかさらっとtrunkに入ってさほど大きな問題なく動いてるのがとりあえずすごい。
そしてソースレベル互換をかなり高度に維持してるのは神業すぎる。
口頭とかオフィシャルな所ではなぜか褒めないので、とりあえずここでこっそり褒めてきます。
ささださんえらい!

_ で、またもくもくした後、shugoさんのRefinements話。
私むっちゃRefinements応援してるので今度こそフルスペックで入って欲しいんですが、どうなるんでしょうかね……。
あと、instance_evalでやることの意義はこの発表のおかげで把握はできたんだけど、でもinstance_evalなのか、うーん、みたいな思いもなくはないです。
あまり論理的な感想ではないんですが。

_ そして最後に俺たちのhsbtさんがasakusa.rbのkajaになったのを聞いて……あれkajaとしての紹介じゃないけどいいのん、とか思いつつ、まだコミュニティアピールの途中だけど離脱。

[RubyKaigi2013] 1日目 / unagi.rb #2

_ てなわけで、私主催のひっそりイベント、unagi.rb
なんかいつまで待っても集合場所に来ない人がいて合流に手間取ったりもしましたが(ご協力いただいた皆様ありがとうございました)、無事に数分遅れくらいでお店に辿り着くことができました。

_ このイベントは、要約すると、ruby-trunk-changesずっと続いててなにそれすごい! しかもruby_2_0_0のブランチメンテナでバックポート業の充実すごい! の近永さんを褒め称える、という理由をつけることによって、普段はお高くて手が出ない鰻様を思い切って食べてしまえ、というものでした。

_ お店がRubyKaigi会場から遠いとか、鰻屋さんは夜が早いのであまり時間がないとか、いろいろ不手際もありましたが、鰻はおいしかったので皆様には堪能していただけたのではないかと思います。
参加された皆さんにはご参加ありがとうございました。
あと、枠が非常に小さかったので告知もひっそりとだったので、参加できなかった皆さんごめんなさい。また次の機会にね!

_ で、帰り際、hsbtさんに「もう発表終わったから明日からRubyKaigi楽しめるわー」的なことを言われたのですが、その瞬間から「あれ、俺は明日が発表なんじゃね?」ということを遂に自覚してしまい、徐々に高まっていくプレッシャーに飲み込まれていくのでありました。
言われたの鰻食べる前じゃなくてよかった……。


被捕捉アンテナ類
[Ant] [Antenna-Julia] [Rabbit's Antenna] [Ruby hotlinks]