IT Office Nishimiyahara

個人用スマホから商用プログラミングまでなんでもお任せ下さい

YAPC::ASIA Tokyo 2013に行ってきた(その2) #yapcasia

      2014/05/13

@nqounetです.

9月19,20,21日は,YAPC::ASIA Tokyo 2013に行ってきました.

長い割には内容がありませんのでお気をつけください.

一言で言うと,楽しかったです.

時系列的にはその1の続きからです.

その前に

その1では写真を付け忘れていたので,写真をば.

前夜祭の様子

前夜祭の様子です.

遠方者参加支援

オープニングの一幕です.(株)スカイアークさま,ありがとうございます.

個人スポンサー特典

個人スポンサー特典のミニ提灯です.

ランチ交流会

ランチ交流会のお弁当です.(1日目)

ランチの場所

館内は原則飲食禁止なので,当初は飲食可能なイベントホールにしよう,と言っていたのですが,ランチセッションでかなり人が多かったので外で食べることにしました.

他の方々も場所に困っていたようで,近くに同じお弁当を持った方がひしめいていました.

1日目続き

では,続きです.

はてなのサーバ管理ツールの話

スピーカーは@y_uuk1さん.

ざっくり言うと,サーバーの監視ツール,デプロイツール,環境構築ツールを統合して管理するソフトMackerel(和名は鯖)の紹介と構想の話.

それぞれのツールに,サーバーのIPアドレスなどを書くのはだるいので,一元管理したい,かつ,ツール自体は自由に選びたいので疎結合にできるツールがほしい,というモチベーションで開発した.

各ツールの設定を自動的に生成できるようにしている.

やはり,サーバー数千台というレベルになってくると,人間が直接管理するのは無理なので,人間で管理できるレベルまでまとめてくれる仕組みは必要ですね.

Lightning Talks Day 1

初日のライトニングトーク.

気になった言葉だけを列挙します.

  • prove 便利
  • Tachikoma(rubyのgem)
  • inspect-perl-proc
  • Benchmark::Confirm
  • Test::Power
  • Power::Assert
  • perl.js
  • emscripten
  • LLVM
  • Spica(WebAPIの差異を吸収する)

なかでも,感心したのは,Benchmark::Confirm.

地味だけど,ベンチマークの各コードが本当に同じ出力なのかは確認が必要ですよね.

懇親会!

昨年に引き続き,今年も懇親会は無料!

DeNAさん太っ腹ですね.

イベントホールと,その隣の部屋(結局行きませんでしたが)も開放しての立食形式でした.

懇親会の様子

立食形式だと,終盤どんどん料理の選択肢が減っていくのですが,終盤になっても料理が追加されてました.野球選手が集まるパーティじゃないので,多すぎだと思います.

懇親会は人が多すぎて,ぼんやりしていると,ある程度の知り合い同士で固まってしまうのが何とかしたいところです.

私のようなヘタレにとっては,スピーカーに話しかける(質問する)には懇親会は調度良いのですが,人気のスピーカーの近くにはライバル(?)が多くてなかなか話しかけるのも大変です.

地方の.pmやPerl入学式などの小さな集まりでは競争率も減るので,人大杉で無理,という方は規模の小さい集まりから初めて顔見知りを増やすと良いと思います.

さて,懇親会の最後のほうで,ようやく(株)スカイアークの@onagataniさんにご挨拶出来ました.なんだかんだで毎年名刺を頂いている感じがします.

2日目(9月21日)

Perlで書く結合テスト

スピーカーは@ikasam_aさん.

結合テスト云々の前に,SWETあるいはSETと呼ばれるエンジニアの話やテストの概論がありました.

後半は具体例をあげての説明で,とてもわかりやすかったです.

単体テストは,テストする対象によって何をテストするのかが変わるので,依頼する場合は認識を合わせることが重要です.

単体でテストする場合,他のモジュールに依存する入力はモックにする,のが良いそうです. そうしないとテストの対象がぶれてしまいますね.

Web APIをテストする場合,生のデータが取れるクライアントを使うとテストがしやすい.

今のところは,LWP::UserAgentかFurlを使っておけば間違いなさそうです.

CacheやDBのテストは,APIを経由せずに直接テストすることも必要っぽいです.

ウェブアプリの場合は,HTMLの出力を調べることになります.

www::MechanizeやSelenium,Wight,Brownieなどがなかなか使えるみたいですね.

ログインの情報をテストに直接書かなくても良いように,環境変数から持ってくるために,必要な環境変数名を定義しておく(Test::Requires::Env)とか,Config::Pitを使うとか,結構気を使っているんだなと.

私の場合,テスト用のユーザーのログイン情報をそのままテストスクリプトに書いていた(公開しているわけではないので問題はないと思いますが)ので,今後は注意していきたいと思います.

Programming AWS with Perl

スピーカーは@horiuchiさん.

当初はノーマークだったのですが,1日目のアレで興味が出たので聴いてみました.

公式のツールとしては,Perl向けのものがないので,AWS::CLIWrapperを使うと捗るみたいです.

で,これを使うためにはAWS CLIというPython製のツールをインストールします.より便利にするために補完スクリプトもあるようです.

さすがエバンジェリストというか,スライドの作りが巧みですね.(公開している資料からは該当ページは削除されていますが)会場に笑いの渦を巻き起こしていました.

What's new in Carton & cpanm

スピーカーは@miyagawaさん.

cpanmは,すでに無くてはならないほどの存在だと思うのですが,どこまでも控えめなところがむしろ凄いと思いました.

かと思えば,次はランチだし少し長くてもいいよね,と言い放つというね.

rebuildは,知っていたけど聴いたことがなくて手を挙げませんでした. 好きな音楽ばかりじゃなく,こういうのも聴いておこうと思っています.

ちょっと前に試したcpanmのconfigure-argsというオプションは,最近追加されていたものらしいです.

こういう場で,自分自身が追っている情報を再確認できるのも良いですね.

ランチ

1日目につづいて2日目もランチくじをひきました.

交流会というからには,交流を求めてきているはずなのですが,今日も集まりが悪いです.

ヘタレな人は,番号順に集めてくれればいいのに,と思うのだろうと思います.

が,しかし,そういう事には時間がかかりますし,交流を求めるのであれば,その瞬間だけほんの少しの勇気を出せば良いのですよ(誰

…まあ,プラカードみたいな小道具があると良かったかもしれませんね.声だけだとどこにいるのかよくわかりませんでしたし.

誰でもいいので1人(そのくらい立候補しょう)が番号を書いて掲げていれば,集まりやすかった気がします.

で,そんな奥手な方々を差し置いて2日目もお弁当をゲットしました.

AWSからたまたま一緒だった@kiyotuneさん(番号違ってたけど)も巻き込むとか,何やってんだかわかりませんが.

で,1日目とほぼ同じ場所へ.

一緒になったのは結果的にほぼ関西勢(@koko_uさんも一緒だった)でした.

学生でCPANAuthorの@narazakaさんは,レンタルサーバーでCGIが普通の環境,ということで,CGI.pmがなくなる話に嘆いていました.

偶然ですが,ちょうど仕事で関わっている大学の学生さんでした.研究室は違いましたが.

それはおいておいて,VPSはいきなりはハードルが高いし,自前の開発環境はあっても公開するサーバーも手頃な価格でほしいところですよね….

Mojoliciousは,CGIでも起動できますが,起動毎にモジュールを全部読み込む必要があるので結構重いし…とか,CGIで動かすならMentaとかNanoAとかが良いんじゃない,とか,Gitprepはレンタルサーバーでも動かせるようにやってるみたいですよ〜とか,ついつい話し込んでしまいました.

レンタルサーバーで動かすのは,今はむしろ難しいんですよね.

なので,Perl入学式でも自前で開発環境を用意して,公開する時はVPSを推奨している(公開の仕方とかはやってないけど)気がします.

やはり,ある程度の層には,レンタルサーバーでCGIという需要はある…のかも.

まだ続く

この後はPerl入学式ですが,長くなりそうなのでまた後で.

respo

respo link

ZenBackWidget

 - 情報技術について ,