2013年5月28日火曜日

Perl Beginners #8を開催しました


5/24(金) 19:00~21:00、Perl Beginners #8 を開催しました。

会場は渋谷区代々木区民会館集会室。比較的広いめで、40人くらいは収容できそうな広々スペースに15名の参加者が集まってくださいました。ありがとうございます。

今回はまさに「初めてづくし」のPerl Beginnersだったわけですが、その1つとしてwifiアクセスポイントの提供を行いました。回線が遅い等の話は特に聞いていなかったのですが、速度や安定性の面でご不満があった方、ご一報いただけますと幸いです。今後の運用の参考とさせていただきます。

発表テーマは「電子メール」だったのですが、「webイコールhtml」という雰囲気に一石を投じておきたいという思いと、古くからお世話になっている技術の風化を感じたから、という2つの理由から選び出されたものでした。関連して、「メール技術交換会(仮)」を現在計画中ですが、ご興味があればこちらもよろしくお願いします。

なお、既にレポートを書いていただいている方もいらっしゃいますので、ここにご紹介させていただきます。

@sora083さんのレポート
@CLCLCLさんの懇親会に触発されて追記したエントリ

オンライン・ビギナーズセッション


さて、今回のビギナーズセッションでは新しい試みとして、Skypeとプレゼン共有ツール「firecracker」を使ってオンライン経由でビギナーズセッションに登壇するという、「オンライン・ビギナーズセッション(named by __papix__)」をやってみました。

今回使用した機材。


ちなみに発表(質問)していただいたのは Perl入学式で絶賛活躍中の@__papix__氏。
いわく、「近代的なPerlの礎となる『オブジェクト指向Perl』の入門にぴったりの情報がまとまっている本やwebサイトで、特にお勧めのものを教えてほしい」というものでした。
回答としては「Perl OOP あたりでぐぐって最初に出てくるはずのピンク色のページ(執筆時点で503エラー出てました。こちらはキャッシュ)が詳しい」ですとか、「オブジェクト指向Perlマスターコース―オブジェクト指向の概念とPerlによる実装方法で覚えた」等、さまざまなものが上げられており、歴史の深い言語ゆえに情報も幅広いと感じました。

ほかには「Software Design (ソフトウェア デザイン) 2013年 04月号」のオブジェクト指向再入門あたりはスモールオブジェクトについて書かれており、設計面でよりよい選択ができるようになりそう、ということで、質問とは別でお勧めさせていただきました。

正直、何かしらの機器トラブルに見舞われるのではないかと戦々恐々としておりましたが、実際やってみると案外うまくいくもので、papixさんをスクリーンに映し出すことにも成功しました。
もう少し突き進めると、Ustreamを使った相互接続的なイベントを行うこともできそうですね。

Back To Perl Beginners #2


盛況のうちにオンライン・ビギナーズセッションを終えたのですが、ちょうどもう一枠ビギナーズ・セッションが空いておりましたので、参加者の方よりリクエストのあった過去のLT「PSGIへの誘い」を発表させていただきました。

最後の方でいくつかPSGI導入のメリットについて「CGIの方がデプロイの手間が無くていいんじゃないの?w」的なツッコミをもらってしまい、結果的にうまい回答ができなかったのが心残りです。

ライトニングトーク


休憩を挟んで、ライトニングトークの時間です。

トップバッターはmod_perlの巨匠@xtetsujiさんの発表で、題して「メルマガシステム失敗談」。
そもそも彼はいわゆる「メールの会社」に勤めているとのことで、10年以上の実績がある自社サービスの裏側と、その開発秘話について発表してくれました。
特に失敗談というと、比較的公にされない傾向にあるのですが、とりわけ黎明期のモバイルメールサービスの開発秘話には、とにかく驚嘆を隠せませんでした。Apacheをmod_perlで拡張してsmtpサーバとして運用するなどのキワモノテクニックは、mod_perlの巨匠でなければ思いつかない代物でしょう。

二番手は主宰@ytnobodyの発表で、「ものすごく単純なメールの送り方」。
Email::Senderを使ったきわめて単純なメール送信の方法と、これまでに使われてきたメール送信系モジュールの紹介をおこないました。Email::Senderについては発表の後も若干の議論があり、Mooに依存してるのが気に入らないという方もいるわけですけど、私自身は今のところ、単純にメールを送る上ではEmail::Senderがとりあえずのベターであろうと考えています。

三番目は鎌倉あたりの若手Perlハッカー、@mackee_wさんの発表で、「ながーーいコマンドを実行して終わった時にメールで通知してくれる君」。
自作したモジュール「App::Notifier(仮)」で、時間のかかるコマンドの実行後に、結果をメールで送信するデモをみせてくれました。App::Notifier経由でim.kayacに通知(メールAPIが公開されている!)してみせたり、今はメールだけにしか対応してないけどプラグイン機構を採用していて、メール以外にも通知を送信できるようになるらしかったり、利便性が高まりそうな予感がしました。

四人目は超大手○○業者にお勤めの@sora083さんの発表で、「大規模メールシステムとPerl」。
普段はそこまでPerlを書くことがないとのことでしたが、おそらくメルマガ処理数では国内随一と思われる同社のメールシステムを、メール配信状況の監視やログの検索、ドメインごとのキュー滞留数の監視など、主に監視面でがっちりと支えるPerl製ツールの紹介をしてくださいました。こんな大手でもPerlはしっかりと使われているんです!

そして最後を飾るのは、北の国の泥酔ハイテンションガイ、@moznionさんの発表で、「Perlでカジュアルにメールを送る(Gmail編)」。
まずgithubをはじめBitBucketやTravisなどのツールが使える環境を「モダンでハッピー」かつドン小○のようにオシャレだと言い、世の中そうもいかないと説明。実体験に基づいた「オシャレではない環境」を挙げ(人力ブランチ&issue管理)、こんな悲しい現実を二度と繰り返さないために「永続的通知」をすすめていました。最終的にgit request-pullの結果を、Gmail経由で自動的に通知する方法(Email::Send::SMTP::Gmailを使った送信方法)を紹介。デモではメール本文が途中で途切れるというオチまでつけてくれました。

懇親会


お店を見つける前に10分くらい道に迷うという失態をしでかしてしまいましたが、どうにかこうにか到着。今回のお店は「地焼酎ダイニング ななかまど」。4000円で飲み放題のコースを頼みました。
記憶に残っているトピックスとしては、206(Partial Content)とRangeリクエストで苦戦した話(主にCatalyst。mod_perlでは割と簡単に処理できるぽい)ですとか、それを昔はAd○bi社がCGIでナンチャッテ実装して配布してたらしいとか、Redhat7.2と7.3の細やかな違いなど、およそ現代から大分程遠い話題で盛り上がったこと、泥酔ハッカソンの話等があります。特にPartial Content周りの話は、今どきのWAFやPlackではちゃんと実装されてるのか、確認しておかないといけないなーと思っております。

次回


7/26(金) 19:00~21:00の予定です。テーマは「Perlの文化」。初めての非テクニカルなテーマです。
日程が近づきましたら、ATNDを立ててツイッターなどで拡散いたします。

追記

hide_o_55さんから教えていただいたのですが、PlackでRangeリクエストに対応したければ、Plack::Middleware::Static::Range というのがあるそうです。ためになりました!

2013年5月13日月曜日

Perl Beginners #8 開催します

Perl Beginners 主催のytnobodyです。皆様、いかがお過ごしでしょうか。

さて、告知が大変遅くなりましたが、当初予定しておりました通り、5/24(金)にPerl Beginners #8 を開催致します。

  • 日時:2013年5月24日(金) 19:00 〜 21:00
  • 場所:東京都渋谷区代々木区民会館 3F集会場 (図書館と併設) 
    • 代々木駅から徒歩7分
    • 地図こちら
  • テーマ:電子メール
ATNDはこちらです。皆様のご参加をお待ちしております。

また、Perl Beginners #8で、ビギナーズセッションに登壇してくださる質問者および、ライトニングトークをしてくださる発表者の方を募集しております。こちらもぜひふるってのご応募をお待ちしております。なお、現時点では以下の通りの状況となっております。

  1. ビギナーズセッション(15分程度) 
    1. @__papix__氏 (関西から、オンラインでの質問。機材的な意味でうまくいくかわかりませんが、挑戦的な試みです。)
  2. ライトニングトーク(5分程度) 
    1. メルマガシステム失敗談 @xtetsuji氏 [対象Perlレベル 多分2〜3くらい?※勝手な予想]
    2. ものすごく単純なメールの送り方 @ytnobody [対象Perlレベル 3〜4]
    3. 大規模○○メールシステムとPerl @sora083氏 [対象Perlレベル 2〜3]
    4. ながーーいコマンドを実行して終わった時にメールで通知してくれる君 @mackee_w氏  対象Perlレベル 3くらい]
    5. Perlでカジュアルにメールを送る(Gmail編) @moznion氏 [対象Perlレベル 2〜3]
応募方法は、以下のいずれかでytnobodyにコンタクトを取っていただく形となります。

  1. twitter で @ytnobody にリプライを送っていただく
  2. info@perl-beginners.org にメールを送っていただく
  3. 直接ytnobodyに面と向かって伝えていただく
なお今回より、ライトニングトークについては「対象Perlレベル」というものを設けさせていただくことにしました(Perlレベルについてはこちらの記事をご参照ください)。
これは、発表内容について対象となるPerlレベルを明記し、おおよその難しさを事前に知っていただくためのものです。発表者の方には若干のご負担が追加されてしまう旨、あらかじめご了承ください。

それでは、5/24(金)にお会いしましょう。