folio-sec/reladomo-scala
reladomo-scala - A wrapper library which provides an idiomatic way to use Reladomo in Scala.
https://github.com/folio-sec/reladomo-scala/
こんにちは。 FOLIOバックエンドエンジニアの横田 (よこな) です。
2017年9月9日(土)、大阪にて開催された「Scala関西Summit 2017」にFOLIOがBronzeスポンサーとして協賛しました。
エンジニアリング統括の伊藤はグッドフロー・テクノロジーズの瀬良さんと連名でCfP選考を通過し、登壇の切符もゲット。「Reladomo in Scala」というタイトルで発表を行いました。瀬良さんはScalikeJDBC、Skinny FrameworkなどのOSSを開発されており、その豊富な知識とご経験をいかし弊社の開発を手伝ってくださっています。
セッションは2人が交互に話すスタイルで行い、さらにその場でFOLIO初のOSS「reladomo-scala」を公開するという一大(?)イベントを盛り込んだ構成でした。関西独特のあたたかい雰囲気の中、大いに盛り上がった発表だったのではないでしょうか。
今回は、その様子を私目線で詳しくレポートします!
まずは、昨年10月にOSSとして公開された「Reladomo」というJavaのO/Rマッピングフレームワークを紹介する伊藤のトークから始まります。
今年に入ってから伊藤は、JJUG CCC(資料リンク)、JJUGナイトセミナー(資料リンク)などでReladomoに関するセッションの機会を何度かいただいています。これまでは、誰にでも分かりやすい一般的な例を用いながら、Reladomoとその特徴「バイテンポラルデータモデル」を分かりやすく伝える発表を行ってきました。
今回はそこにFOLIOらしさが加わり、日々実際に向き合っている証券業務の例からスタート。普段から仕事でよく見るシナリオに「あるある」と聞いていた私ですが、皆さんにも活用シーンのイメージが伝わったでしょうか?Reladomoは、取引時間や履歴データを扱う要件が多い証券システムの開発において非常に有用なのです。
さて、実際の要件をまじえながらReladomo活用のモチベーションを伝えた後は、瀬良さんにバトンタッチ。いよいよ今回のメインコンテンツ、reladomo-scalaの紹介です。こちらは元々JavaフレームワークであるReladomoを、FOLIOでも導入するために用意したScalaラッパーです。6月頃より、瀬良さん・伊藤が中心となり開発を続けています。Scala関西Summitならではの内容になってきましたね。
瀬良さんのお話はReladomoの導入方法に始まり、具体的なCRUD操作の方法をサンプルとともに次々と解説してくださり、濃い内容ですがあっという間の20分でした。Java向けに作られたオリジナルとの対比も交えながらの説明で、そこから伝わってくる「Scalaらしいコード」で使えることへのこだわりには、瀬良さんの豊富なOSS開発経験がいきていました。
コード例とともにReladomoの理解を深めたところで、再び伊藤の登壇です。ついにここで、目玉イベントであるreladomo-scalaのリアルタイム公開を実施しました!ご参加いただいた多くの方に見守られながら、FOLIO初のOSSが誕生です。
最後に、チュートリアルと同日OSS公開したテンプレートを紹介して発表は無事終了。45分では語り尽くせないreladomo-scala、ぜひ皆さんにも触ってみていただきたいです!質疑応答も盛り上がり、セッション後には早速Reladomoを動かしてみたという方や使ってみたいと感想を伝えてくださる方も現れ、会場と双方向のコミュニケーションが生まれていました。
reladomo-scalaのリポジトリはこちらです。
OSSとして公開した今、少しずつ広まって皆さんのお役に立てるようなことがあれば幸いです。実は既にプルリクエストやイシューもいただいており、早速の反響に社内も沸き立っています。引き続き皆さんのフィードバックやコントリビュート、お待ちしています!
2015年から始まり3度目の開催を迎えたScala関西Summit。私は個人的に第1回から参加していますが、毎回パワーアップし盛り上がりが増しているように感じます!会場となった関西圏以外からもたくさんのエンジニアが集まっており、多くの貴重な学びや出会いがある非常に有意義で魅力的なイベントでした。来年以降もぜひ参加したいですね。
株式会社FOLIOはScalaを活用してこれまでにない証券システムを一から作るという、とても新しく面白い挑戦が出来る場です。
今回紹介したScala関西Summitでの取り組みのように、技術コミュニティへの参加やOSSの公開・コントリビュートも積極的に行っていきたいと考えており、Scalaが大好きなエンジニアの皆さんが楽しく挑戦しながら働ける環境であると自負しています!
少しでもご興味をお持ちいただけたらぜひお気軽に遊びにいらしてくださいね!
詳しくは募集要項をご覧ください。