Unipos engineer blog

Uniposの開発者ブログ

Scala関西Summit 2019に参加してきました #scala_ks

こんにちは!Fringe81 エンジニアの谷口です。2019年10月26日(土) - 27日(日)に開催されたScala関西Summit 2019に同期の大沼と参加してきました。

2019.scala-kansai.org

Scala関西Summit

Scala関西Summitは、Scalaをテーマとした関西で最大級の技術カンファレンスです。Scalaの導入事例やTIPSなどなどScalaに関わるあらゆる人を対象にしたカンファレンスです。

2日間の開催で、1日目は講演・ハンズオンdayです。講演は公募によって選ばれ、大変幸運なことに私のプロポーザルを採択して頂きました!
2日目はアンカンファレンスdayです。当日の朝に参加者全員で何を話すかが決められます。1日目の会場のホワイトボードに挙げられた『こんなこと話してほしい!』について話せる人を募ってセッションのタイムテーブルを決めていきます。講演で質問に上がったことを深ぼったりとライブ感のある日です。

ここからは当日のセッションをいくつかご紹介したいと思います。

1日目:講演・ハンズオン

Dependent method types を利用した軽量Clean Architectureの紹介

がくぞ(@gakuzzzz)さんの発表です。

gakuzzzz.github.io

ドメインのコードから実装詳細を分離する方法としてFreeモナドやTyped Finalが用いられますが、それらは使う側がモナドを意識する必要がありました。そういうものを使わなくてもDependent method typesを使うことでモナドを明示的に扱わなくてもドメインコードと実装詳細を分離できるという話と、実際にそれを実現するために考慮するべきことについての話でした。示されたコードを見ると、確かに利用者側はモナドを意識せずに使えるようになっていて、比較的見通しのよい記述が実現できそうだと感じました。

Java 5.0時代の非同期処理技術から学び直すScala/Java非同期処理

リチャード 伊真岡(@RichardImaokaJP)さんの発表です。

非同期処理の歴史とOS/CPUの内部での動作や、非同期処理によって起こる問題とそれに対する解決策や、共有すべき状態をどのように扱うべきか、などのことをわかりやすく(すごい丁寧に作られた動画で本当にわかりやすかった…)説明してくれるセッションでした。質疑応答のときにスレッドプールの使い分けの話で盛り上がり、2日目のアンカンファレンスでもとりあげられたのが印象的でした。非同期処理は人間には難しい。

Scala圏論チョット学ぶ

私(@ravineport)の発表です。

f:id:fringeneer:20191113142811j:plain
発表の様子

Scalaで関数型について深めていくと登場するモナド、そして圏論。勉強してみたものの挫折したという方も多いのではないでしょうか(私も何回も挫折しています…)。そこで、圏論とはなにか、圏論におけるモナドとはなにかを感じつつ、Scalaモナドがどう表現されているのかを眺める、というのが本発表でした。 圏論チョットわかった!という気持ちになって頂ければ幸いです。

Scala における Monad って何だろう?

Naoki Aoyama(@AoiroAoino)さんの発表です。

Scalaにおけるモナドの基本からどう実装するのかまで、Scalaのコードで丁寧に解説してくれるセッションでした。モナドを使うことでなにがうれしいのかから始まり、様々なモナドの実装、抽象的なモナドの扱いまで、すぐにでも活かせる実用的な内容でした。コードベースの説明で実装イメージがとてもつかみやすかったです。Scalaにおけるモナドは知っておくと便利なツールの一つ!

2日目:アンカンファレンス

1日目の発表の実装例の紹介や質問に対する深堀り、Monix導入、Airframeハンズオン、モブプログラミングなどが行われました。

f:id:fringeneer:20191113142525j:plain
アンカンファレンスのタイムスケジュール

最後に

私も大沼もScala関西Summitには初参加でしたが、様々な経歴のScalaエンジニアが知見を共有し語り合うアットホームな雰囲気の素敵なカンファレンスでした。2日目のアンカンファレンスも1日目とはまた違った雰囲気で貴重な経験をさせて頂きました。
懇親会でも発表の内容だけにとどまらずScalaについて語ることができ、楽しい時間を過ごすことができました(なんと食事に生ハムの原木も登場しました)。
Scala関西運営スタッフの皆様、本当にお疲れ様でした!素敵な場と時間をありがとうございました!