今日はYAPC::Asia TOKYO 2015 前夜祭の日です
    Posted on August 20, 2015
    
    
    
    Tweet
    
ビッグサイトの近くまで来ましたので、始まり次第適当に自分用のメモを残しておこうと思います。gihyo.jpさんのレポートも更新されていますので、ぜひご覧くださいませ。
SHIBATA Hiroshiさん 「The story of language development」
- 最近36協定のチェックとかやってる
 - rubyコミッターで3番目に強い
 - Asakusa.rb
 - 「Rubyのカンファレンスなのでは!」
 - RubyはPerlっぽいところもある
 - 1.8と1.9の超えられない壁
- 1.8 はmatzさん、1.9 はsasadaさん
 - MRI (海外でよく使われてることば。Matzじゃないのに)
 
 - Ruby == CRuby の人と、仕様だと思ってる人が居る
- CRuby, mruby (ISO/IEC)
 - Rubinius の人はCRubyはRubyの一部だと言っている
 
 - 開発とは?
- 人、開発、問題、リリース
 
 - Ruby Commiter
- キーパーソンは6人
 - Platformごとにメンテしている人もいる (有志が好みの環境で)
 - WindowsのほうがOS Xよりサポート厚い
 - “Ruby Core Team” 海外での呼び名
 - commiterはどこにでもcommitできる - ただし最後まで責任をとる
 - With great power comes great responsibility (スパイダーマン)
 
 - パッチは手でバックポートされてる
 - セキュリティはジャッジなどが難しい
- security@ruby-lang.org
 
 - 基本的には会社での開発と同じ
- ユースケースは「プログラムが楽しい」
 - リリースマネージャーもいる
 - 怖がらずにRubyに接して欲しい
 
 - Q. developer meetingとはどういう形式?
- A. 対面。海外の人が日本語辛いので、透明性確保。毎月matzが意思決定してる
 
 - Q. コミッター陣で困ってる話は?
- A. 個人的には、リリースが大変でブラック化してる。他のコミッターに仕事させたい
 
 - Q. どんな時間にコードを書いてる?どんな機能を実装した?
- A. 会社のシステムでRubyがバグってたらRubyを直す。という口実で昼間書く。ビルド、gemsなどまわり。gemsのupstreamとの調停
 
 - Q. お金はどうなってる? commiterだとRubyを書く機会は減るのでは?
- A. NaCl, Herokuなどがサポートしている。スポンサーは増えて欲しい。Rubyコミッターの大半はCプログラマ。bundleされているRubyプログラムを書いている
 
 
Akira Sakamotoさん 「Perlワンライナー入門」
- 手軽に掛ける。学習曲線がなだらかですぐ覚えられる
 - ワンライナーを使う人が増えてほしい
 - Perlの得意分野を使い倒している。「テキストデータ」「書き捨て」「10年は無敵」「ライバルがいないから陳腐化しない」
 - 正規表現が協力。特殊変数、構文が揃っていて簡潔。CPANモジュールにアクセス可能
 - テキストデータを相手にする仕事は多い
- html, csv, ltsv, etc
 
 - ハンズオン形式
- grepの代わりに使う 
-nlE "/zombie/ and print" -n一行ずつ-l改行まで-eeval-MURI::Encode=uri_decode
 - grepの代わりに使う 
 - 例: sitemap.xmlからリンク切れを探す
 - ログの流れが速すぎる → 
randで絞るとか - google botの割合を探す 
HTTP::BrowserDetect - フリップフロップで正規表現の間を取るとか
 - Q. デバグがだるいのは神通力が必要?
- A. デバグが大変になった時点で神通力ない場合はスクリプトにする
 
 - Q. 他の言語は?
- A. Rubyとかawkでもいける。Pythonはインデントがきつい
 
 - Q. おすすめのCPANモジュール
- A. URLエンコード。SHA1系とか。
Time::HiRes 
 - A. URLエンコード。SHA1系とか。
 
tagomorisさん 「How to Create/Improve OSS Product and Its Community」
- ユーザーのユースケースと貢献
 - OSSの例
- 社内のものをオープンに
 - 社内で使いたい、貢献を期待
 - 内部でも外部でも
 - 外部へ広げたい
 - 外部でだけ使う
 
 - OSSへの影響
- コアメンバーの違い
 - 社内の人か社外の人か
 - 保守・貢献への影響
 
 - オープンなチーム
- パッチの受け入れ手順が明らか
 - 会社による支援(安心感)
 
 - 言語が与える影響
- Perlで書くとScalaを書く人は見向きもしない
 - データ処理系はJVMじゃないと
 
 - バージョン付け
0は危ない- miyagawaさんの
0.99は安定?ほかの言語の人には理解できない 
 - 英語を使う
- メモなど。ロシア語だと意味が分からないのと同じで日本語はNG
 - 日本語のpull-reqはrejectするくらいの勢い
 
 - 質がよすぎるソフトを作るとコミュニティは盛り上がらない
 - contributionについてオープンにあれ
- issueはソフトウェアにかかわる人を増やす
 
 - stable、かつ、メンテしていることを常に示すこと
- Twitter、MLへの返答
 
 - 日本人だけじゃなく、英語で世界のcontributorを増やす
 - ソフトウェアの特性
- モジュール、プラガブル → コミュニティができる
 
 - 良いデベロッパ、会社が作るものは広まりやすい
- 着眼点がいいとか、理由はきちんとある
 
 - 最初からみんなが使ってくれるOSSは使えない
- “Do it, and keep doing it”
 
 - Q. 出来が悪い状態で出した方がいい?
- A. そうではない。できる範囲をしっかりやる。レビューのステップとか
 
 - Q. コンテキストを理解しているとパッチを送りやすい
- A. きついpull-reqが来た。書き直せと言うことはできる。時間は無限ではないので自分で書くこともある
 
 - Q. 一番悲しかったこと。嬉しかったこと。印象に残ったこと
- A. Dockerのログをfluentdにするドライバを書いた。APIがイケてないという話が出て動かなくなった。依存がでかいと言われて書き直した。別のpull-reqはさくっとマージされた。とか。pull-reqのマージは相手の都合があるはず
 
 - Q. よいOSSの開発とよいソフトの設計の関連はあるの? 単機能で分割されてると1.0で完成すると活発に見えないのは、ゴテゴテさせるべき?
- A. fluentdは大きくなってきている。大きくなると別のコンパクトなツールが出るという流れもある。新しいツールが出たときはコアコミッターとなるチャンス。デベロッパコミュニティにはプラスなので、肯定的に捉えていい