僕のYak Shavingは終わらない

車輪の再発明をやめたらそこには壮大なYakの群れが

YAPC::Asia Day 2

YAPC Day 2
■日付:2011年10月15日

Unix Programming with Perl (Unix Programming with Perl 2)(kazuhoさん)

f:id:kazuph1986:20111015104021j:image

  • 資料
  • メモ
    • 目的
      • 正しいプログラムを書くこと
      • テストが通ることは重要だけど常に正しいかを証明できない
      • PerlとOSの知識で正しいコードを書きます
    • IPC::Open3の話
      • tokuhiromさんのコードを突っ込む
      • デットロックまで考える
        • ちゃんと子プロセスを終了させる
      • 大量にSTDOUTするとコードが止まってしまう
        • バッファーサイズってどのくらい?
        • 上限に注意してコードを書く
          • ちゃんとCloseすればいい?
            • だめ
          • Open3のでは標準エラー出力にundefをすると標準もエラーも同じところに吐く
      • open |-はセキュリティ的にだめだよ
        • エスケープめんどくさいね
    • Signal and Race Conditionのはなし
      • まったくわからなかったww

kazuhoさんはローレイヤーっぷりがすごく良かった。
コンピュータの挙動を全部知った上でやれるってかっこいいなと思いました。

ちなみに大学のOSの講義は全然おもしろく受けなかった自分です(汗

OSの知識は必ずしも知っている必要はないと思うけど、
OSの知識のない人はその知識を使わない仕事につくだけだろうし、
う〜ん、やっぱローレイヤーカッコイイ。

大規模環境における、マニアックなキャッシュ利用術(xaicronさん)

  • 資料
  • メモ
    • キャッシュの話
    • Chahe::memcached::Fast
      • 色々設定できるよ
    • io=timeoutは超大量のデータがあったら起きるかもね
    • とりあえず永続接続するようにする

うーん、大規模になると必要なんでしょうね…

ぼくがかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく

  • 資料
  • メモ
    • 前提
      • 長期的
      • 大規模
      • 複数人で開発
    • 良いフレームワークとはなにか?
      • 読むコードが最小
      • 安全であること
    • フレームワークのコードを読むのは参考になる
    • 薄いフレームワークってなんやねん!→なにも実装してないことwww
    • 限りなく薄いフレームワークとは
      • 実装0で設計指針のみw
      • みんなが向方向が同じ事
      • 安全、読むコードが最小
      • 危険なことをするためのコストが最小
      • 三回コピペしたら抽象化する
        • 逆に不必要に抽象化するならコピペの方がいい!
      • 長期開発を意識
      • 柔軟性
      • 読むべきコードが最小
      • 安全
      • DBI生+
    • はてなはRedge
      • 安全じゃなかった
      • テストが不十分
    • app.psgiから見れるように、読み下せるように
    • 安全策
      • HTML出力時自動エスケープ
      • POSTのトークン自動っシェックCSRF
      • JSON出力時のXMLHtmlRequiestのX-Requested-Withを自動チェック
      • 自動でX-Feame-Options:DENY
      • クリックジャッキング対策
      • iframeでロードさらたフォームではなにか変更されないとサブミット不可
      • 危険なことをやるときにコストを上げる。

設計思想、哲学、経験を積んでないとこれには至らないのかなと思いました。
フレームワークのコードを読みたいと思いました。

画像Hacki(ゆーすけべさん)

  • 資料
  • メモ
    • Perlで画像を読むコム、加工する!!
    • imagerを使う
    • 幕末写真フィルタの存在www
    • Image::ObjectDeklsdjfasdljkfはOpenCVを使える
    • こっからは18禁

Perlの目的がw
Perlでも案外画像をいじれるんだなぁと思ったのとImage::Magick以外の選択肢も普通にあんだって知れてよかったです。

以外に画像処理をするCPANもあって、
新たな可能性を感じました。

Perlで無理ゲーム攻略(竹迫さん)

動画で見るのがいいと思います。
見て楽しめるプレゼン。最強でした。

Perlで簡単にWindowsのソフトとか起動していじれるっていう内容だったので、
マウスで単純作業をしてうんざりしている人はこれを見ると幸せになると思います。

ゆーすけべさんもそうですけど、
こういったアプローチがそもそもPerlにあったんだと知れて良かったです。

LTは会社の人が発表したり、内容的にもかなりぶっ飛んでたので楽しめました。
Perlのこういう文化っていいなぁと思いました。

Perlが好きだからPerl使ってんだよ」って人たちが何百人も集まって
わいわいやるって楽しいですね。
来年は出す。

総括

一日目の懇親会でいろんな有名な人と話せたり、YAPC::Asiaすごい。
ってなると同時に自分もその層に行くことはできないかと考えるようになりました。

経験と継続的な勉強とネタ探し。
たぶんブログを見るだけのことをこなしていても
YAPC::Asiaで発表できるようにはならないので
ブログを書く側、勉強会で発表する側になってないといけないと思いました。

最後にYAPC::Asiaの運営スタッフの方々、
発表してくださった方々ありがとうございました。
f:id:kazuph1986:20111015190334j:image