Scala Matsuri 2014に行ってきました!
〜シャノン発!?初!?OSS「Malba」の紹介〜

このエントリーをはてなブックマークに追加
こんにちわ。ishikawaです。

9月6、7日に開催された日本最大級のScalaカンファレンスに参加してきました。


























(注)写真はイメージ図です。ScalaMatsuriとは関係ありませんw



バラエティに富んだ発表やエキサイティングなデモに、有名企業の利用例が生で聞け、
またScalaで開発している人たちの熱みたいなものが伝わるとてもいいカンファレンスでした。

終わってからだいぶ日にちが経ってしまいましたが^^;
印象に残ったセッションの感想と、弊社LTで発表された内容について書いていきます。


少し自分のこと


Scalaとの出会いはちょうど3年ほど前。
当時お世話になっていた@ikeike443さんのお誘いで参加した
第三回Playframework勉強会で、初めてScalaの存在を知りました。
(当時はPlay1.x+Javaで某会社のWebサイトのバッチシステムを開発していました。)
そのときは「ほぇーScalaってそんなにいい言語なの?」
みたいな感想しかなかったように思います。

その後…縁あって仕事でScalaを使い始めて1年半。
今はPlay2.x+Scala、Akka、MongoDB等を使用して、弊社のメイン製品である
マーケティングプラットフォームと連携するアプリケーションを開発しています。
(弊社メイン製品はPerlで書かれています)


プログラム


全プログラムについてはこちらからどうぞ。
(ScalaMatsuriのサイトにすべてプログラムのスライドのリンクが張ってあります。)


「The Evolution Of Scala」- Martin Odersky教授のありがたいお話

他の聴講者同様、生のOdersky教授の話が聞けるのを楽しみにしていました。
(言語を学ぶには、思想から入ることが大切ですよね?)
Scalaを作り始めた動機から始まり、どうやって受け入れられ進化してきたか、また現在注目しているのは、Scala.jsだという話をしていて、ちょっと使ってみたいなと思いました。

次のバージョンはJava8の取り込みがメインとなることやScalaで重要なのはスケーラブルであること。という言葉が印象的でした。

余談1:
同僚の情報によると他の方の公演中もプログラミングしていて、Eclipseで開発していたそうです。



「Node.js vs Play Framework」- LinkedInのYevgeniy Brikmanさんによる発表

英語が苦手な自分にとって、一番わかりやすい英語のセッションでした。
二つのweb frameworkをスコアカードを使って、学習曲線、テスト、メンテナンス性といったいろんな角度から統合的に比較するといった内容でした。

結果から言うと、総合点でPlayが負ける結果になりましたが、Brikmanさん曰く、少人数・小規模ならNode.js、大人数・大規模ならPlayという選択みたいです。

余談2:
懇親会でBrikmanさんと気づかず、たまたま同じテーブルにいて、たどたどしい英語で話かけてしまいました。。とても優しく接してくれて、ジェントルメンな方でした(o^-^o)



その他、Twitterの丹羽 善将さんによる「バルス!」がらみの発表や、はてなの活用事例、Scalaマクロの実用例等、たくさん面白い発表がありました。(私は出ていないのですが、Sparkのデモがだいぶtwitter等でざわついていたとか。。。)



懇親会とLT


20時くらいから始まった懇親会ですが、飲み物と食べ物がしこたまあって、最高でした!
ただ、酔っぱらいがあふれてガヤガヤしている中、LTをした方々は御愁傷様としか言いようがなく。。。w

同僚もLTをしたのですが、あまり聞いている人がいなかったように思います。(たぶん)
なのでここで少し紹介しようと思います。






Malbaとは


簡単に言うと、ジョブキューイングマネージャサービスです。

私が所属しているチームは前述のとおり、メイン製品と連携するアプリケーションをScalaで作成しており、システム間はAPIを通してやり取りを行います。内部でAkka等を使用し並列処理させているため、無制限にAPIリクエストを送って、メインの製品へ与える影響が大きくなったり、また、アプリケーション単体で見てもなんらかの処理を数の制限なく行うことはリスキーで、制御が必要になり、当サービスが作成されました。

タスクを登録すると、そのタスクに紐づいたWorker(複数)がタスクを処理します。
処理されるタスクの順序は基本的にFIFOですが、グループごとにタスク登録もできるので
先にきたAグループのタスクがすべて終わるまで、Bグループのタスクが待ってしまうといったことも回避される作りになっています。


OSSとして提供されていますので、ぜひ使ってみていただけたらと思います!
みんなでMalbaを育てていきましょう。


まとめ


私が出席したのは1日目だけで、2日目のアンカファレンスには、体力の限界を感じ出席できませんでした。。残念。

会社で仕事しているときは、「組織に所属」しているという意識ですが、勉強会やカンファレンスに出席すると、組織って所属するものではなく人が作りあげていくものなんだなあなんて、あらためて感じます。

そう感じさせてくれるScalaコミュニティのパワーに感心すると共に、個人としてはカンファレンスで得た知識やテクニックを自分のスキルに変換できるよう、これからもScalaを使って製品開発頑張っていこうと思いました。

ScalaMatsuri事務局の方々、本当にお疲れさまでした。


次の記事
« Prev Post
前の記事
Next Post »
Related Posts Plugin for WordPress, Blogger...