YAPC::Asia Tokyo 2015 スペシャルレポート

YAPC::Asia Tokyo 2015 1日目レポート[更新終了]

この記事を読むのに必要な時間:およそ 12 分

Kazuhiro Osawaさん「大規模でも小中規模サービスでも捗る microservices な Web サービスのつくりかた」

マイクロサービスは,バズワードではあるが,ごく普通の開発手法であるということが説明されたセッションでした。

画像

例として,スタートアップにおける最適な手法が説明されていました。小さいサービスでは,モノリシックなコードが効率的であるため,MVCをきちんと設計したうえで,ジョブキューやワーカーとしてマイクロサービスを利用することが可能だと説明されていました。

中規模に成長したサービスにおいては,他のサービスや社外でも使いたい,スケールアウトしたい際に,特定の機能をライブラリではなく,APIとしてマイクロサービス化する手法が述べられました。そして,大規模に成長した場合は,コミュニケーションを適切に行う為のドキュメンテーションが重要であり,WikiやERD,UMLがその例として示されました。

画像

締めくくりとして,初期設計での正しいコンポーネント化が重要であることが述べられました。正しい設計により,モノリシックで開発してもサービスの成長に合わせて,適切にスケールアウト戦略を取ることが可能になるということでした。

Hideaki Nagamineさん「PietでLISP処理系を書くのは難しい」

Pietはドット絵でプログラムを表現する難解プログラミング言語です。京大マイコンクラブではPietが大流行しているそうで,エディタやPietに変換される言語など,周辺ツールの開発も盛んだそうです。

画像

Pietは画像の中の点を法則にそって移動しながら命令を実行していきます。最大公約数を求めるプログラムなどを例として画面に提示するたび,その難解さに聴衆から笑いが起きていました。

画像

最後に,最終的にPietに変換されるPASXXという言語を使ってLispを実装したことを紹介していました。変数などの環境を実装するのがとても大変で完全な実装にはまだ至っていないことや,今後の展望として関連ツールの機能追加などを目指したいと述べていました。

Tokuhiro Matsunoさん「Perl6 on JVM: It works??」

Amon2やTest::Requiresなどの作者であるtokuhiromさんの発表です。Perl 6の実装であるRakudo Starはuseful,usableであると主張していますが,これが本当かどうかを検証するという趣旨のトークです。

画像

まず,Rakudoのバックエンドに使われているVMには幾つか種類があり,もともとメインストリームであったParrotに加えてMoarVMが登場したことや,JVMを利用した実装があることなどが述べられました。なかでもJVM版はJavaの資産が使えることや,ゼロから開発した前者2つにくらべて安定していることが紹介されました。

画像

また,Web開発に必要なHTTPやDBアクセスなどのモジュールが最低限揃っていることや,C APIやJavaのライブラリを利用したGUIアプリケーションが実装できることなどを挙げ,問題はあるが遊べるくらいのレベルには来ているという評価をされていました。

karupaneruraさん「うっかりをなくす技術」

「うっかりをなくす技術」というタイトルでkarupaneruraさんが発表しました。開発の現場で起きがちなヒューマンエラーを安全工学の視点を交えつつ,人的,マネジメント,環境に分類しそれぞれの要因と事例を挙げ,それらを如何に解決に導くかという話をされました。

画像

具体的には,ヒヤリハット,ハインリッヒの法則などを交えて深刻な問題に至る経緯を説明し,ReadableCode,ドキュメントの整備,各種言語を例にとりstrict.pmやESLintなどミスに気づきやすい仕組みを導入することが重要であると述べられていました。最後に,他に良い仕組みもあるはずなので一緒に探していきましょう,という呼びかけで締められました。

画像

Yusuke Wadaさん「Podcastを支える技術,エンジニアのためのWebメディア,そしてCPAN」

@yusukebeさんが,自身のPodcastである「だんごゆっけの平和な話」「wada.fm」での実体験から,Podcastによる配信の楽しさ,配信に必要な機材やソフトウェア,配信の工程に関して話しました。

画像

Podcast配信で最初にやるべきこととして,ドメイン決め,Webサイトの構成(URI⁠⁠,Media RSSフィード生成手段の検討が必要だと述べていました。また,iTunesStoreではレビューや購読者数などのベンチマークを取ることができて,登録は簡単かつ無料で行える便利なサービスであると紹介していました。

コンテンツに関しては,コーナーを作る,台本を決める等の工夫をすることにより,コンテンツを充実させているそうです。実際に利用されている機材の説明では,静かな場所で取ることを大前提として,マイクの特性を考慮してより聞き取りやすくなるようなマイクを選択していることを話しました。また,Podcastをしていて楽しかったことの例として,ポン出しとして使っている「わだえふえ~む」のジングルのモバイルアプリを,リスナーがいつの間にか作ってくれたというエピソードも語られていました。

画像

最後に,Podcastは聞くのも配信するのも含めて楽しいので,自分なりに作ってみてくださいと,発表を締められました。

著者プロフィール

青木大祐(あおきだいすけ)

茨城県在住。個人的な用途では主にPerlを使うが,業務では残念ながらC#とTypeScriptしか触らない。大学在学中からPerl6が気になっており,Tsukuba.pmを開催して布教もした。

Twitter:@VienosNotes


臼井洋文(うすいひろふみ)

京都市出身のプログラマ。仕事はPerlでサーバサイド開発がメインだが,必要に応じてiOS/Androidアプリの開発やインフラ周りの整備も行っている。趣味は写真とボルダリング。

Twitter:@usuihiro

Web:http://d.hatena.ne.jp/usuihiro1978/


越智琢正(おちたくまさ)

愛媛県西条市出身。大学進学を機に上京。在学中は超小型人工衛星の研究開発で,ハードウェアをいじったり,C++やC#を利用。就職後にPerlと出会う。仕事ではPerl製フレームワークやゲーム用のBaaS開発,とあるゲームの海外版開発等に従事。人に喜ばれるものを作るのが好き。


田実誠(たじつまこと)

某クラウドインテグレータのデベロッパー。Web技術全般に興味があり,プライベートではRuby,Node.js,Python等で個人ツールやOSSのプラグインを作っていたり。Perlはド初心者。

Twitter:@tzm_freedom

Web:http://freedom-man.com/blog/


中村浩之(なかむらひろゆき)

Spiber株式会社勤務。バイオベンチャーで,生物学実験を行う研究者が使うアプリケーションの開発を行っている。Ruby,Pythonを書いていることが多い。グリッチに興味がある。


野田大貴(のだだいき)

株式会社技術評論社、雑誌編集部所属。主な業務は書籍の編集。

Twitter:@nodawep


藤沢理聡(ふじさわまさあき)

神奈川県在住。ソフトウェア開発や周辺業務に携わっている。長年 Perlを愛用しているが,仕事では他の言語を扱うことが多い。今年はクリスマスプレゼント(Perl 6)をことのほか楽しみにしている。

Twitter:@risou

Web:http://www.risouf.net/


本間雅洋(ほんままさひろ)

北海道苫小牧市出身のプログラマー。好みの言語はPerlやPython, Haskell, Scala, OCamlなど。在学中は数学を専攻しており,今でも余暇を利用して数学を嗜む。現在はFreakOutに在籍し,自社システムの開発に力を入れている。 共訳書に「実用Git」(オライリー・ジャパン),共著書に「FFmpegで作る動画共有サイト」(毎日コミュニケーションズ)がある。

Twitter:@hiratara
Web:http://hiratara.github.io/


安武貴世志(やすたけきよし)

現在は大手Web系IT企業のインフラエンジニアとして,幅広いシステムの構築・運用を担当。インフラ以前はソーシャルゲームのサーバサイド開発をしていたことも。最近,趣味でKoyomiというジョブスケジューラをPerlで書いた。福岡出身。

Twitter:@key_amb

Webサイト:http://keyamb.hatenablog.com/


山中裕之(やまなかひろゆき)

ドラゴンズファン。某会社のプログラマとして活動中。好きな言語はPerl, Ruby, C, C++, Haskelなど。武術が好きで休日はいそしんでいる。

Twitter:@hiroyukim
Web: http://hiroyukim.hatenablog.com