Blogaomu

WEBアプリケーション開発とその周辺のメモをゆるふわに書いていきます。

Scala関西Summit 2018に参加しました #scala_ks

大阪にて行われたScala関西Summit 2018の1日目に参加してきました。私自身にとっては初の参加で、Scalaの集まりとしても久しぶりに顔を出しました。

2018.scala-kansai.org

プラチナスポンサーがZOZOテクノロジーズだったので一番大きなホールの名称がZOZOホールになっていました。

私が聞いたトークセッションについて軽くメモ

http4sとcats-effectで可愛らしい、関数型らしいアプリケーションを書こう!٩(๑^o^๑)۶

https://speakerdeck.com/dysangelist/tagless-final

  • 発表者のダーシャは仕事でお世話になってるのと「可愛らしい」ってどういうこと?というのが気になって聞くことにした
  • Scalaの特徴を可愛さに例えているのが良いポイントでした
    • 簡潔さ、高レベルでの抽象化、論理的、型システムで安心などなど
  • Tagless Finalという手法?の紹介
    • うまく理解できなかったけど、実装を良い感じに分離できるとかそういう良さがあるのだろうか?

アニメーションで理解するAkka StreamsとAkka HTTP

https://youtu.be/NBKpr7bL22M

  • これまでAkka Streamsを触る機会があってドキュメントを読んだりもしたけどふわっとした理解だったので聞くことにした
  • アニメーションで概念が理解しやすかった
    • 爆発シーンが最高
  • Akka HTTPがAkka Streamsで構成されてるのは興味深かった

Format things with scalafmt

https://speakerdeck.com/tanishiking/format-things-with-scalafmt

  • 共感を覚えた意見
    • 人によって暗黙的にしたがっているスタイルが存在しているので、人が増えるとカオスになる
    • 瑣末な議論を減らして、本質的なものの議論に重きを置きたい
  • ScalafmtはScalametaというものでScalaを解析しているそう(コンパイラとは別の実装)、すごい
  • 既存のコードベースからdiffの少ない設定を生成するやつ

Scala-erにも影響ありそうなJavaの現状まとめ

https://www.slideshare.net/linecorp/summary-of-the-state-of-java-that-will-affect-scalaers

  • JavaはOpenJDKとしてオープンソースコミュニティで開発
  • Javaのビルドはいろいろなプロバイダーが提供している(Oracle, AdoptOpenJDK, クラウドベンダー等)
  • リリースサイクルが変わったことは知っていたけども、サポートポリシーや各種ビルドについて知らないことばかりだった

Akkaを分散トレーシングで見てみよう

http://nbviewer.jupyter.org/format/slides/github/grimrose/scala-kansai-summit-2018/blob/master/slide.ipynb#/

  • Scalaに限らずマイクロサービスにも通ずる話題だったし、分散トレーシングという概念は今後ものにしておきたいトピックだった
  • Kamonを使っているけどもJVMメトリクスの取得に使っていたので、トレーシングの方も調査したい
  • OpenTracingという統一した仕様を策定している(CNCFプロジェクト)
    • 実装はそれぞれのライブラリで異なる
  • Jaegerのロゴが可愛い(gopherっぽい)
  • 途中で発表者のドリンクタイムを入れていたのが良かった(Pyconの発表であったのを取り入れたらしい)
    • 聞く側も一段落できて良い

DatabricksとSparkではじめる [データ分析/機械学習] 実践入門

https://speakerdeck.com/smdmts/databrick-and-spark-with-data-analyze-and-ml-for-newbie

  • Databricks便利っぽい
    • AWS上に実行基盤を構築可能で、Web UIもある
    • Web UI上のNotebookで開発できる
  • ここからはScalaの世界観で、ここからはPythonの世界観という風な言い回しが特徴的だった
  • Sparkが基盤になっているとScalaを使う場面も出てくるのか、なるほどと思った

Json codec を楽しもう、現場で役立つ circe

http://labs.septeni.co.jp/entry/2018/09/18/090727

  • 「キルケ」派が多い?(「サース」って呼んでた)
  • library versionの書き方面白かった .map(_ % version) 的な
  • 私も使っていますが今のところJsonライブラリとしては最も使い勝手が良い感じ
    • Encoder/Decoderの自動導出(サポートされている型の多さ、case classにも対応)
  • forProductN知らなかった

実践GraphQL on Scala

https://speakerdeck.com/petitviolet/real-world-graphql-on-scala

  • 思い切ってGraphQLを導入(フロントエンドはElmだそうです)
  • 型システムを持っているものとScalaは相性がよいと再認識
  • 参照系と更新系でアプリケーション内の層を分けているのは興味深かった

良かった点

  • 写真公開NGの人を明示的に区別できていた(名札の色で判断できる仕組み)
  • 写真撮影用スタッフがいた
  • フリーコーヒー
  • 快適なwifi
  • 椅子のみではなく机がある
  • 学生スタッフが結構いた
  • アンカンファレンスのScala酒場(参加できなかったけけど、ツイッターで流れてきた画像を見て良さそうと思った)

懇親会

懇親会は会場変わって、大阪駅から直ぐのさくらインターネット。オープンスペースにはバーカウンターがあってオシャレ空間だった。お料理も美味しかったです!

発表者に質問してみようかなとか思ってたんですが、話に割って入るのが個人的にはハードル高いので聞けずじまいに終わってしまいました。でも初めましての方とも話すことができて良かったです。金沢から来ましたーと言うとかなりの確率でびっくりされましたw (関西勢と東京勢が多かった)

その他の様子

スタッフの皆様、参加者の皆様、楽しい空間をありがとうございました!はるばる金沢から参加して良かったです!

あと、早朝のサンダーバード乗るのしんどかったので来年は前乗りしようかなと思いますw