プログラム Program


本カンファレスのセッションとスピーカーについての情報です。

9月6日の講演では、A会場B会場それぞれで、スポンサーであるドワンゴ様のご協力によりニコニコ生放送での中継が行われる予定です。


9月6日 タイムテーブル

時間

会場A
ニコ生

会場B
ニコ生

9:00 - 9:55

開場

9:55 - 10:15

S-1

オープニング

ScalaMatsuri 事務局 水島 宏太

-

10:15 - 11:15

S-2

基調講演 - Scala 進化論

EPFL Martin Odersky

-

11:25 - 12:05

A-1

sbt、傾向と対策

Typesafe Eugene Yokota

B-1

GitBucket: Perfect Github clone by Scala

株式会社ビズリーチ 竹添 直樹

12:10 - 12:50

A-2

Fifty Rapture One-Liners in Forty Minutes

Jon Pretty

B-2

Xitrum Web Framework ライブコーディング

モビルス株式会社 押田 丈治&Ngoc Dao

12:50 - 14:20

S-3

ランチタイム - ランチタイムLT

-

14:20 - 15:00

A-3

Node.js vs Play Framework

LinkedIn Yevgeniy Brikman

B-3

SparkSQLおよびCatalystの紹介

株式会社ノーチラス・テクノロジーズ 上新 卓也

15:05 - 15:45

A-4

SIerに立ちはだかるScalaの壁に進化型ジェネレータで挑む

TIS株式会社 前出 祐吾

B-4

Solid and Sustainable Development in Scala

エムスリー株式会社 瀬良 和弘

15:55 - 16:35

A-5

Apache Spark を用いた Big Data パイプラインの統一

Databricks Aaron Davidson

B-5

はてなにおけるScala活用事例

株式会社はてな 辻川 貴哉

16:35 - 17:15

S-4

コーヒータイム - Typesafe presents 業務ユーザ懇談会

-

17:15 - 17:55

A-6

Scalding と Storm と Summingbird で始めるScalaでデータ処理

Twitter, Inc. 丹羽 善将

B-6

グリー初のScalaプロダクト!チャットサービス公開までの苦労と工夫

グリー株式会社 長谷川 貴之&尾崎 俊

18:05 - 18:45

A-7

Scala 上で実現された制約プログラミングシステム Scarab について

神戸大学情報基盤センター 宋 剛秀

B-7

Silkで編むデータフロー

Treasure Data, Inc. Taro L. Saito

18:50 - 19:30

A-8

国技と Scala

株式会社ドワンゴモバイル 藤村 拓也

B-8

Scalaのマクロに実用例から触れてみよう!

株式会社ビズリーチ 島本 多可子

19:35 - 20:15

A-9

RubyからScalaへ: There's more than two ways to do it

マーベリック株式会社 todesking

-

20:20 - 22:20

S-5

エンディング - 懇親会&懇親会LT

-

9月6日 セッション一覧

S-2 基調講演 - Scala 進化論 会場A 10:15-11:15

Scala は、学術的な研究室を脱出して一般的に普及することができた数少ないプログラミング言語の一つだ。これは 10年前に Scala が発表された時には誰も想像することができなかったことだ。このセッションでは、Scala の開発の過程を初めから近未来へ向けてたどっていきたい。当時を振り返りながら、Scala の動機や期待がどう変化したのか、重要な成果は何だったのか、何を学んだのかなどを考察する。

EPFL Martin Odersky

Martin Odersky

Odersky先生は現在スイス連邦工科大学ローザンヌ校(EPFL)の教授であり、Typesafe社のco-founderとScalaの創造者でもあります。 関数型とオブジェクト指向プログラミングの統合を長年研究しており、その二つは表裏一体であると考えています。 Pizza、GJやScalaのような言語を設計・開発し、javacとscalacの作者でもあります。 Scalaに関する最も人気な書籍である「Programming in Scala」は彼の代表作です。 関数型プログラミングやリアクティブプログラミングを話題とした大規模なオンライン授業も実施しました。 以前、IBMリサーチ、Yale大学、Karlsruhe大学やSouth Australia大学でも研究していました。

A-1 sbt、傾向と対策 会場A 11:25-12:05

sbt は、Scala コミュニティで広く採用されているインタラクティブなビルドツールです。このセッションでは sbt の基本的な使い方のデモの後、sbt を構成するコンセプトを説明します。次に、今後入る新機能や sbt 1.0 へ向けての展望をご紹介します。

Typesafe Eugene Yokota

Eugene Yokota

Eugene Yokota (@eed3si9n_ja) は、趣味でも仕事でもソフトウェア開発をやっている。 Stevens Institute of Technology へ留学後、そのままニュージャージー州でエンタープライズ系金融アプリケーションを Delphi や C# で書くことでキャリアを始めたが、深夜や週末には sbt プラグイン、scalaxb、treehugger、「独習 Scalaz」といった様々な趣味プロジェクトをハックしていた。 ブログ記事や Scala Documentation ガイドなど数々の和訳も提供している。2014年に、sbt のコア開発者として Typesafe社に入社。

B-1 GitBucket: Perfect Github clone by Scala 会場B 11:25-12:05

GitBucketはGithubを忠実に再現したオープンソースのGithubクローンです。Javaさえインストールされていれば簡単に動作させることができ、SSHでのアクセスも可能です。このセッションではGitBucketの紹介、どのような技術を用いて作られているか、そして今後のロードマップについてお話しさせていただきたいと思います。

株式会社ビズリーチ 竹添 直樹

竹添 直樹

株式会社ビズリーチで働くScalaプログラマです。Scalaを使用した新規サービスの開発に携わっています。Scalaで書かれたフルスペックのGithubクローン「GitBucket」の開発者であり、シンプルかつ強力なWebフレームワーク「Scalatra」のコミッタの一員でもあります。

B-2 Xitrum Web Framework ライブコーディング 会場B 12:10-12:50

XitrumNgoc Daoを中心に2010年に開発をスタートしました。

Scala Conference in Japan 2013 のLT、http://www.slideshare.net/ngocdaothanh/xitrum-scalaconfjp2013では、Xitrum 2.x について発表しましたが、今年は最新バージョンであるXitrum 3.xについてライブコーディング等を交えて紹介させていただきます。


  • 基本機能の説明: ルーティング自動収集、WebSocket、SockJs、CORS、i18n機能など

  • 開発サポート機能: クラスファイルとルーティングのオートリロード、Swagger APIドキュメンテーション、クライアントコード自動生成

  • 運用サポート機能: Scaliveによる動的アタッチの、 Metricsによるログ解析

  • クラスタリング機能: スケールアウトのデモ

モビルス株式会社 押田 丈治&Ngoc Dao

押田 丈治&Ngoc Dao 押田 丈治&Ngoc Dao

押田、Ngocはモビルスというベンチャー企業に所属しています。 Xitrumはモビルスにおけるリアルタイムチャットアプリケーションをはじめ、国内におけるゲーム事業会社、通信事業会社、教育系事業会社の様々なアプリケーション内チャットシステム、ロシアや韓国でのウェブアプリケーションにおいて採用事例があります。

A-3 Node.js vs Play Framework 会場A 14:20-15:00

さァ、お待ちかねの対決だ: Node.js 対 Play Framework。どちらも開発者の生産性向上、非同期 I/O、そしてリアルタイム Web のために作られた人気のオープンソースプロジェクト。しかし、学習がより簡単なのはどっちだ? テストは? 配備は? デバッグは? よりスケールしやすいのは? キミは Javascript と Scala のどちらを選ぶ? Google v8 エンジンと JVM では? NPM と Ivy では? Grunt と SBT では? 二人が入り、出るのは一人!

LinkedIn Yevgeniy Brikman

Yevgeniy Brikman

世界最大のプロフェッショナル・ネットワークであり、200 カ国に 3 億人のメンバーを持つ LinkedIn は、今や Play Framework をコア技術として採用しています。Yevgeniy (Jim) Brikman は LinkedIn での Play のプロジェクトを率い、中核となる基盤コードを書き、Play や関数型言語の Scala を使う開発者をトレーニングしました。彼は、その過程で学んだ生産性や信頼性、パフォーマンスについて数多くの知見を、ブログ投稿や講演を通じて共有したいと強く願っています。

B-3 SparkSQLおよびCatalystの紹介 会場B 14:20-15:00

分散処理基盤であるHadoop MapReduceより高速に処理できるとして、Scalaで実装されたApache Sparkが注目を集めています。このセッションでは、Apache Sparkのコンポーネントの1つであるSparkSQL、また内部で利用されているCatalystについて紹介します。
SparkSQLはDatabricks社が中心となって開発を行っているApache Spark上でSQLを実行するためのコンポーネントです。SQLのパースから論理実行計画、物理実行計画を作成し、RDD(Resilient Distributed Datasets)を組み立てます。論理実行計画はルールベースの最適化が行われます。これら論理実行計画や最適化のためのフレームワークはCatalystというライブラリで提供されています。

株式会社ノーチラス・テクノロジーズ 上新 卓也

上新 卓也

ノーチラス・テクノロジーズで研究開発をしています。 Sparkコントリビュータ。

A-4 SIerに立ちはだかるScalaの壁に進化型ジェネレータで挑む 会場A 15:05-15:45

弊社でのWebアプリ開発ではJavaを利用することが多く、その周辺環境を整備し開発の効率化を図ってきました。基本的な環境を整え、さら なる効率化を目指すには、これまでの前提(Java)を覆すことが必要と考え、その鍵としてScalaに注目しました。
Scalaには開発を効率化する多くの機能が搭載されている反面、我々SIerで活用するには様々な障壁が存在します。例えば、エンタープラ イズ向けライブラリやツールの不足、安定指向の開発現場や顧客、習得や教育の難しさ、などです。
その障壁を超えるための武器の1つとしてコードジェネレータを開発中です。今回は、本ジェネレータを紹介し、どのように障壁に挑んでいるのか をお話します。

(特徴)


  • Play Framework、Slickに対応したコード(Controller/View/Model/Routes)を生成

  • Slickコードジェネレータを活用し、そのポリシーを踏襲

  • アプリケーション構造をリポジトリに取込み、Rails等の持つScaffoldに+αした機能を提供

  • Typesafe Activatorとの連携


尚、本ジェネレータはOSSとして公開予定です。

TIS株式会社 前出 祐吾

前出 祐吾

TIS株式会社 戦略技術センター所属。これまで社内向けWebアプリケーションフレームワークの開発やJenkinsの活用を中心に様々な手段で開発の効率化を図るとと もに社内向けの教育を実施してきた。 現在は、さらなる効率化を目指し、Scalaを活用した開発基盤の研究&開発に従事している。システム開発は、泥臭くなく、スタイリッシュで ありたいと考えている。

B-4 Solid and Sustainable Development in Scala 会場B 15:05-15:45

近年、Scala が non-blocking アーキテクチャを実現するためのプラットフォームとして、あるいは、関数型プログラミングを実践するための現実的な選択肢として注目を集める一方で、より使いやすいオブジェクト指向言語としての Scala (人によってはそれを better Java と呼ぶかもしれません)を期待する声も決して少なくはないという印象もあります。

私は Scala をよりよいオブジェクト指向プログラミング言語として利用することでアプリケーション開発をより堅実で安全なものにすることができるのではないかと考えています。私たちは Scala の普及により既に既存の(場合によってはかなりレガシーな)Scala アプリケーションを持続的にメンテナンスし、成長させ続けることについて考えるべき時期に来ていると思います。

このプレゼンテーションでは Java や他のオブジェクト指向言語に親しんでいる開発者の方々に適したよりよい開発に関するノウハウなどをご紹介したいと思います。

エムスリー株式会社 瀬良 和弘

瀬良 和弘

Scala を好む Web プログラマ。ScalikeJDBCSkinny Framework プロジェクトリード。本業ではエムスリー株式会社に所属し Web アプリケーション開発、社内基盤の整備など幅広く携わっています。

A-5 Apache Spark を用いた Big Data パイプラインの統一 会場A 15:55-16:35

多くの組織においてビッグデータへの関心が集まるにつれ、より高速な処理が可能なツールと、より簡便な API の両者が求められてきています。Apache Spark は Scala で書かれたクラスタ計算エンジンで、 (1) Hadoop よりも 100倍速いインメモリな計算プリミティブと (2) Scala、Java、そして Python 用の簡潔で、高レベルな関数型 API という 2つの方法でこの問題を解決します。

このトークでは、Spark が様々なデータ処理テクニックを統一的に扱えることを機械学習パイプラインを作ることでデモします。これは三部構成になっていて、第一部は SQL テーブルからの JSON データの読み込み、第二部は k平均法 (k-means clustering) モデルのトレーニング、第三部はそのモデルの tweet ストリームへの適用となっています。従来ならば、このようなパイプライン処理には別々の処理フレームワークを必要としました。Spark SQL、MLlib、Spark Streaming などと組み合わせれるという Spark ランタイムの汎用性の高さを利用することで、全ての処理を単一の短いプログラムで書くことができます。これによって、コンポーネント間でコードやメモリの共有が可能となり、開発時間と実行時の効率の両方を改善することができます。

このトークは完全ライブのデモとコード解説の予定で、アプリケーションを作る過程を通して、各ステップで使われるライブラリを説明して、最終的にはリアルタイムで生のツイートを識別できるようにします。

Databricks Aaron Davidson

Aaron Davidson

Aaron Davidson is an Apache Spark committer and software engineer at Databricks. He has implemented Spark standalone cluster fault tolerance and shuffle file consolidation, and has helped in the design, implementation, and testing of Spark's external sorting and driver fault tolerance. He is also a contributor to the Tachyon in-memory distributed file system and has co-authored work on Highly Available Transactions in the Berkeley AMP Lab.

B-5 はてなにおけるScala活用事例 会場B 15:55-16:35

はてなでベータ版を提供中のサーバ管理サービスであるMackerelは、サーバサイドの開発に Scala, Play2 を採用しています。10年以上Perlを利用してきたはてなが、なぜ新たな開発言語としてScalaを選択したのか、言語の変化がプロダクトや開発フローにどのような影響あたえたのか、現在のMackerelの運用・開発手法などを紹介します。

株式会社はてな 辻川 貴哉

辻川 貴哉

2009年 インターンを経て 2011年 アプリケーションエンジニアとして株式会社はてな入社. Mackerelチームの立ち上げ時からリードエンジニアを務めています。

A-6 Scalding と Storm と Summingbird で始めるScalaでデータ処理 会場A 17:15-17:55

Twitter では開発言語の一つとして Scala を採用し様々な用途に活用しております。
その中でもツイートや様々なイベントを同期的に処理するリアルタイムジョブ、非同期にまとめて処理するバッチジョブを Scala を利用して構築できるようにすることで、他の Scala による資産を組み合わせたサービス構築を可能にしております。このプレゼンテーションでは Twitter でそれを実現している Scalding と Storm そして Summingbird の始め方を楽しい Scala の使い方の一例として、具体例とともにユーザーとしての立場からお話させていただきたいと思います。

Twitter, Inc. 丹羽 善将

丹羽 善将

2010 年よりサンフランシスコをベースに Twitter, Inc. でソフトウェアエンジニアをしています。 実は主に iOS アプリの開発の関わっていますが、Scala のプロジェクトにも興味津津です。

B-6 グリー初のScalaプロダクト!チャットサービス公開までの苦労と工夫 会場B 17:15-17:55

グリーでは今年6月にGREEチャットというサービスをリリースしました。
本発表では、GREEチャットのバックエンドをScalaで開発したときの利点や苦労した点についてお話させて頂きます。
トピックは以下の通りです。


  • 弊社で初めてScalaのプロダクトを導入する際の苦労

  • 数十万DAUでもリアルタイム性を維持するための工夫

  • AkkaやFinagleなどのOSSライブラリを使った非同期処理、並列処理

グリー株式会社 長谷川 貴之&尾崎 俊

長谷川 貴之&尾崎 俊 長谷川 貴之&尾崎 俊

2013年 グリー株式会社に新卒入社。 エンジニアとしてGREEチャット開発プロジェクトに参画中。

A-7 Scala 上で実現された制約プログラミングシステム Scarab について 会場A 18:05-18:45

命題論理の充足可能性判定 (SAT) 問題を解くプログラムであるSATソルバーが2000 年以降大きく進歩しており,活発に開発と研究が行われている.このような背景から,様々な分野でSATソルバーを利用した問題解法システム (SAT型システム) が成功をおさめるようになった.

本発表ではScala上に実現したSAT型制約プログラミングシステムScarabについて説明する.Scalaを選んだ理由は制約プログラミングのためのDSL(Domain-Specific Language) を実現可能なこと,静的型付けにより型安全なプログラムを作成できること,そしてJVM (Java Virtual Machine) 上での効率の良い実行が可能なことが挙げられる.

実際にScala上に開発されたScarabは制約プログラミングのためのDSL, SATソルバーの入力を生成するSAT符号化モジュール,SATソルバーのインターフェースから構成される.

発表では簡単な例とデモを通じてScarabについて説明する.Scarabは以下のURLで公開されている.

http://kix.istc.kobe-u.ac.jp/~soh/scarab/

神戸大学情報基盤センター 宋 剛秀

宋 剛秀

2006年に神戸大学大学院で博士前期課程修了.サントリー(株)を経て,2011年に総合研究大学院大学で博士後期課程修了.2012年より神戸大学情報基盤センター助教.博士 (情報学).制約プログラミング,SAT技術およびそれらの応用に興味をもつ.プロフィール詳細: http://kix.istc.kobe-u.ac.jp/~soh/

B-7 Silkで編むデータフロー 会場B 18:05-18:45

SilkはScalaでデータフローを構築するためのフレームワークで、データ処理のための演算(map, filter, reduce, joinなど)を組み合わせてデータフローを記述します。Scalaマクロの機能を用いることで、プログラムのAST(構文木)からデータフローのDAGを作成しており、変数名をDAG中のマーカーとして利用することで、データフローの中断、再計算、中間データに対するクエリなどをサポートできるようになっています。さらに、データフローと実際の計算を分離することで、コードを書き換えずにインメモリ用、クラスタ用のデータ処理エンジン(Weaver)を切り替えることが可能です。このセッションでは、Silkを用いてコードを書きながらデータ処理のパイプラインを実行していく方法を紹介していきます。

Treasure Data, Inc. Taro L. Saito

Taro L. Saito

東京大学理学部 情報科学科卒. 東京大学大学院情報理工学系研究科 コンピューター科学専攻修了・博士(情報理工学). トランザクション管理、XMLデータベースの研究に従事. 2007年以降、データベースからゲノムサイエンスの分野に移り、東京大学大学院新領域創成科学研究科 情報生命科学専攻にて助教を務める。大規模ゲノム情報処理のための分散コンピューティングの経験を積み、2014年3月よりトレジャーデータ株式会社にてソフトウェアエンジニアとして勤務

A-8 国技と Scala 会場A 18:50-19:30

既に Practical な言語となった Scala。
これから必要なのは、Scala の紹介や、実用可能かというものではなく、設計、開発、運用に関するプラクティス、ノウハウ、悩み等の共有ではないでしょうか。

このセッションでは、とある国技のスマートフォンアプリ開発において、Scala/Play Frameworkを採用した結果、設計時に考えた事、実践した事など、主にこれから Scala/Play Frameworkを使おうとしている、使いはじめている方を対象に、プラクティス、ノウハウ、問題点などを共有します。

株式会社ドワンゴモバイル 藤村 拓也

藤村 拓也

本格的には去年より Scala をはじめた Scala Newbie。 株式会社ドワンゴモバイルに所属し、新規サービスの企画/技術ディレクションからプログラミングまでを担当している。 コードを書くのは勿論、アーキテクチャ設計、サービス設計などを好み、お酒は誘われたら断わらないが信念。

B-8 Scalaのマクロに実用例から触れてみよう! 会場B 18:50-19:30

Scalaはマクロが使えますが、「実際にどこで使うの?」「どんなふうに使うの?」と思ったことはないでしょうか?
このセッションでは、既存のコミュニティでマクロが活用されているところを抜粋して紹介しつつ、以下の疑問を紐解くような内容をお話しさせていただきたいと思います。


  • マクロがあると何がうれしいのか

  • マクロで何ができるのか

  • 実用でどんなところに活用できるのか


株式会社ビズリーチ 島本 多可子

島本 多可子

株式会社ビズリーチで働くScalaプログラマです。新規サービスの開発でScalaをフル活用しています。GitBucketのコミッタもやっています。

A-9 RubyからScalaへ: There's more than two ways to do it 会場A 19:35-20:15

Rubyを主戦場としていた筆者が業務でScalaを使うようになってから半年ほどになります。
RubyとScalaは、どちらもオブジェクト指向と関数型パラダイムの融合を試みていますが、その実現方法は大きく異なります。
動的処理に特化したRubyに対して、静的な解決を重んじるScala。
このプレゼンテーションでは、それぞれの機能を比較しながら異文化を学びます。

マーベリック株式会社 todesking

todesking

2008年、大学卒業に失敗。JavaでSI→Railsでブラウザゲーム→Scalaで広告システム。 Vim、Ruby、Scalaなどのコミュニティに些細な貢献をしている。


9月7日

2日目は、国内初の Scala をテーマとしたアンカンファレンスを開催します。 アンカンファレンスとは「参加者が創っていく」カンファレンスです。 より詳しい説明はアンカンファレンスのページをご覧ください。

時間は 10:00-17:00(開場 9:00)。 朝食と昼食を用意いたします。


© 2012 - ScalaMatsuri 事務局