この半年で参加したものなど

半年ぶりの更新。生きてます..よ > ぶるーすさん

  • xUnit Test Patterns 読書会
    • 月イチでほぼ毎回。徹夜も毎回。
  • LLTV
    • おしゃれぐあいに圧倒された。
    • 企画も、色んな意味ですごかった。
  • DevLOVE 2009 Fusion
    • DevLOVE初参加。この人たち本当にアツい。スゴい。
    • 都合により一部しか参加できず残念。
    • あとで動画をじっくり見る。http://www.youtube.com/user/developlove
  • "TDD" Boot Camp
    • 宿題をやったので、あとで書く。

RubyKaigi2009 初参加

仕事とぎっくり肩治療の都合があり、RubyKaigi 2日目昼から参加しました。
まずは、スタッフの皆様、スピーカーの皆様、お疲れ様でした。ありがとうございました。


参加された方々は、なにはともあれアンケートを。
アンケートのお願い

前書き

Rubyを学びたくて、RubyをやるならKaigiだろうと思い、飛び込んだ次第です。
技術的な面は残念ながらわからず、ログのようなものは書けないです。
ですから、感じたことなどを書こうと思います。
また、訓練されていないので、変なことを書いているかもしれません。

そこに何があったか

言語をつくっている人と、メンテしている人と、テストしている人と、使っている人が、対等に意見を言いあう場がありました。
メイン会場に、会議室に、ロビーに。


質問や意見が出され、コミッタが答える。
内容は言語そのものにも及び(GCとか)、そこにひょっこりとMatzが現れたりする。
意見には良い意味で遠慮が無く、公の場でものすごい会話が行われる。
(「なんでそのパッチあてなかったんだっけ?」)


あぁ、Kaigiだ。参加者は attendee(出席者)であって、guest(客)じゃないんだ。


これが、まつもとさんが基調講演でおっしゃっていたフェアということなのか。
言語を信じ、言語作者を信じ、言語使用者を信じる。
そしてそれを受け止める場があり、覚悟を持った人達がいる。
これが、フレームワークやライブラリではなく、言語をターゲットに行われている。


「Matz is nice, so we're nice.」


すばらしい空気を感じることができました。

改めて感謝と、イベントで感じた、よくわからないけどものすごい何か

改めまして、すばらしいイベントをありがとうございました。
そこかしこにうきうきする仕掛けがあって(IRCやサイン会や給電所やホワイトボードやジュンク堂にとけこむ角谷さん)、たのしく、気持ちよく参加できました。


初めてRubyKaigiに参加させていただいた訳ですが、たのしいだけじゃない、何かすごいものも見たように思います。それが何なのか自分にはわかりませんが、例えば高橋さん基調講演冒頭での御辞儀。この迫力は凄いものがありました。

自分にとっては、今回のRubyKaigiで最も印象的な場面です。


Pill はもちろん、Red Pill です。


追記

「レガシーコード改善ガイド」売ってました!ポップ付き!

新入社員向けの本を検討中...

本屋に行ったり、職場で持ちよってもらったり。
現在の候補はこの2つ。

Eclipseで学ぶはじめてのJava

Eclipseで学ぶはじめてのJava

独習Java 第4版

独習Java 第4版

Eclipseで学ぶはじめてのJavaは、とても丁寧に書いてあって好印象。
先日Amazonで購入したところ、2刷になっていました。
クラス名やメソッド名に日本語を使うという点でAmazonのレビュー評価が別れているけれど、全くの未経験者にとっては特に違和感なく使えるのではないかと思います。
もちろん、実際のお仕事では日本語名が使えないことがほとんどであることを前置きする必要がありますが、名前が重要なことと、解り易さという点で、妥当なトレードオフかなと。
自分は、テストメソッドに日本語を使ったことがあるので、違和感はあまりないです。


(追記)
著者の木村さんからコメントをいただきました。
日本語変数や日本語メソッド名についてですが、本文の中に
「一般的に、日本語の変数はあまり使用しません。」
という記述があります。
一般的ではないが、あえてわかりやすさのために使っているのであろう、ということは理解していましたが、その記述については見落していました。
著者の言葉で書いてある、という点は、初学者に渡すうえでとても安心できます。
(追記ココマデ)


独習Javaは、ちらっと見てみただけですが、最初に渡すには重過ぎるような気がします。
新入社員全員が気概のある人で、全員がこの敷居を越えられるのだったら、仕事の友として机に常駐する本になると思いますが。。

Baronを中古で買ったら、ちょっと壊れていた話

ずっとずっと、椅子が欲しくて、中古も視野に入れて探していました。
もろもろ調べた結果、「今井家具店だろ」ということになり、行ってきました。


最終的に購入したのは、Baronのハイバック。

ヘッドレスト無いと意味なし

という意見も見かけましたが、それはいずれ追加すれば良いだろうと*1


車に乗せられたバロン。

到着。

優雅な感じで。

部屋に運びこみ、座ってグルグルしていたところ、ある部分で「メキメキ♪」と不快な音がします。
ひっくりかえして確認すると、座面を前後に調節する部分が外れていました。


...早速分解して修理を試みます。


結果的に、若干リスキーな買い物となりましたが、直してからは快適に使用できています。
中古家具もアリですね。
よくよく調べて、実際に座ったりチェックしたりする必要がありますけれど。

*1:ヘッドレストだけで3万円弱もしますが...

xUnit Test Patterns 読書会 #1 参加 (3月28日)

http://www.fieldnotes.jp/xunit/


今回は、Chapter1を担当。


若干余裕で準備を始めたつもりが、予想以上の分量と内容の重厚ぶりに圧倒されました。*1
自分の範囲を一通り読んではいたものの、いざ日本語にという段階で手を抜くことができず、結果、準備は夏休みの宿題@8月31日状態に。


自分の読んだり訳したりするスピードが遅いというのもありますが、この本の著者の本気ぶりに触れ、真摯に向きあわねばと頑張ったつもりです。
twitterでお付き合い下さいました皆様、ありがとうございました。本当に、涙が出るほど助かりました。

今回工夫したこと。

重い重いと言い訳していてもアレなので、スキャナで読みこんで地道にPDF化してみました。
  • バラす勇気が無かったとも言う。
  • 決っして、t-wadaメソッドが信じられなかったわけではありません。
  • PDFにしたものを印刷して持ち運んだり、One Note に吸いこませてメモ書きしたりして、なかなか良い感じでした。

One Note に吸い込んだ結果はこんな。


もちろん、工夫という点において、スケブによって新たな境地を見い出した Mr.Narrative には敵うべくもありません。
このつぶやきには、深い意味があったのです。

SKKにチャレンジ
  • 脳のいつもと違うところを使っている感じがする。
    • 夢に「▽」が出てくる。まれに「▼」も出てくる。
  • 慣れるといいかも。
  • むりやりにでも使い続けてみようと思う。


厚さ及び殺傷力が何かと話題になる本書ですが*2ユニットテストの実用書としてだけでなく、システムに対する心意気を感じさせてくれる本としてもお勧めです。
幹事をしてくださった、せとさん、ありがとうございました。


xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series (Fowler))

xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series (Fowler))

*1:もちろん、良い意味です

*2:FF3の「学者」的な

第1回 buri-ja勉強会

@市ヶ谷健保会館会議室
さしいラー参加。

昼の部

id:imai78さんの「ぶりで苦労したトコロ(一合目)」(ぶり基礎)

これからburiを学ぶにあたっての基礎知識などを、網羅的にまとめてくれた。
特に、パスについての考えかた。
はぶさんの補足もあり、次の「ぶりべん」の「箱」につながる重要な所。

  • パッケージ名.プロセス名.アクティビティ名でユニーク
  • 例えば
    • 販売管理.受注プロセス.承認待ち
    • 経費管理.申請プロセス.承認待ち
  • 同じ「承認待ち」でも、「箱」としては違う。
  • ぶり脳を身につけると、これが感覚としてわかるようになる。

いつも思うのだけど、imaiさん絵がうまい。
絵があったほうが内容がはるかにわかりやすいので、資料アップを期待。

はぶさんの「ぶりべん」

箱を意識した設計のグループ演習。

  • フローを考える際に、伝票箱をまず意識する

これが意外と難しい。
曰く「手続き脳に侵されている」状態なので、箱へのイメージに邪念が混じる...。
データ、画面、コードが頭をよぎるとブレてしまうので、

「伝票がFAXで届いたと思え。その紙、まずはどうしたい?」

というアドバイスを頂きました。なるほど。受領済の箱に入れますね。

TO DO - DOING - DONE

の箱を伝票が転がっていく。
ただ、グループによって箱の作りかたが全然違うし、同じグループ内でも様々な議論があり、とても面白かった。
丸1日使って(あるいはもっと使って。合宿とか。)、もっともっとやりたかった。

id:makotanさんの「UnitTestベースのデモ」

状態を遷移させるイベントを、ひとつのUnitTestメソッドにして実行し、XPDLに従って状態が変わっていく様子のデモ。
jUnitはメソッド単位で実行できるので、ひとつひとつを動かして見せる際にとても便利。
デモでは、確かにIF文がひとつも無く、XPDLの内容にそって状態が変わっていきました。

ただ、勘違いしてはいけないこととして、

XPDLを変更すれば、いつでも、すぐにフローが変更できる。

というのは、確かにそういう能力を持っているけれど、最初のフロー設計をないがしろにして良いという訳ではなく、設計はXPDLを書く時点できっちりやった方が良い、とのことでした。

夜の部

はぶさんから熱い話を聞く事が出来た。


人を雇う際の心構え、人の人生を背負うということ、コミュニティついて、1つの我慢ならないことを断わるための覚悟。などなど。
(どこまで書いてよいかわからず、詳細は書けない。。)
特に、接近戦/遠距離砲戦略について。
ひとつひとつに深い考えがあり、隣の人と顔を見あわせて、何度も深く頷く場面があった。
今、思い返してみて驚くのは、はぶさんの話はすべて原因と結果が明確になっているということ。

このためにこうして、こうなった。

これは、行動の前に戦略があって、その結果についてきちんと分析しているからこそ話せることなのだろうな、と思う。


はぶさんの話は本当に染み込んでくるものがあって、
自分はここまで熱く語ってくれる御仁と出会ったことが無い。


先日のデブサミの咳さん語録とあわせて、ものすごい影響を受けている。
思考停止しないことが大事なんだなぁ。あとは実践していかないと。


大変すばらしい会でした。
主催のid:imai78さん、会場手配等をしてくださったid:EnogunoCapさん、発表してくださった、はぶさん、id:makotanさん、ありがとうございました。
hikkiさん、また来週ーw