ScalaMatsuri運営ブログ

アジア最大級のScalaカンファレンス「ScalaMatsuri」の運営ブログです。このブログは株式会社はてな様のご協力でお送りしています。

ScalaMatsuri 2020の採用セッションが決まりました!&「私、ScalaMatsuriで転職しました Vol.6 アルプ株式会社 オミ @omiend さん」

大変長らくお待たせしました。

10月17日および18日開催予定の、ScalaMatsuri 2020の採用セッションが決まりました!

https://scalamatsuri.org/ja/

なおタイムテーブルの告知については、開催方式とタイムテーブルの仕様の決定後になります。現時点では8月中旬以降になる見込みです。

7つの「 Scalaビギナー」セッション

また今回、「Scalaビギナー」フラグ有りの7セッションのスピーカーのみなさんには、「Scalaビギナーが学べること」をabstractに追記していただいています。ご協力、誠にありがとうございました。

これからScalaを学んでみたい方から、Scalaの知識を深めていきたい方まで、皆さんのご参加をお待ちしています。

ScalaMatsuri 2020への参加チケットは、こちらからご購入いただけます。

scalaconfjp.doorkeeper.jp

採用セッションの決定を記念して、ScalaMatsuriをきっかけにアルプ株式会社 へ転職された オミ(@omiend) さんの転職インタビューを掲載します。

私、ScalaMatsuriで転職しました Vol.6 アルプ株式会社 オミ(@omiend)

「私、ScalaMatsuriで転職しました」第6回目は、昨年より大名スポンサーとしてご協賛いただいている アルプ株式会社 さんへ1月に転職された オミさん(@omiend)にお話を伺いました。

アルプ株式会社に転職された オミさん

インタビュー

--- 早速ですが、現在の社内の仕事や、コミュニティの活動などについて教えて下さい。

普段はアルプ株式会社にて、Scalebaseの主にバックエンド開発と、今年2月にリリースしたばかりのScalebaseとSalesforceの連携を可能にした「Scalebase Connect for Salesforce」の開発も担当しています。

ScalaMatsuriでは2015、2016を当日スタッフをやってます。

2017年からはコアスタッフとして参加し、主にトートバッグ制作やScalaMatsuri 2020ではサイトのリニューアルも少し担当しました。

Scalaの学習を初めたきっかけはSNSだった

--- オミさんがScalaと出会ったきっかけはなんですか?

エンジニアになってからは基本的にずっとJVMに関する世界で生活してきました。当時はSeaser2などを中心に仕事をしてまして、その後はSalesforceでの開発をやっていました。

それはそれで充実したプログラマーライフを送っていたのですが、あるとき「このままやっていても、20、30年後にご飯を食べていられるのだろうか?」と急に不安になったんですよね。

当時はFacebookやTwitterの人気が日本国内でも出てきた時だったのですが、ソーシャルネットワーク(2010年)という映画の影響もあってか、私もSNSやサービス開発に興味が出てきた時期でした。

中でもTwitterは情報の速さや量、普段の何気ない出来事をつぶやきとして気軽に投稿できるマイクロブログという性質、また、その知らない人のつぶやきを気軽に読むことが出来るという点が斬新で、お気に入りのサービスでした。

そんな時Twitter社がサーバーサイドをRubyからScalaにリプレイスしているという記事を読み、Scalaに興味を持ち初めたのがきっかけです。

Why Scala for Web 2.0? | PPT

JVMで動くという点やオブジェクト指向言語と関数型言語のハイブリッドという点が面白そうで、先述の「この先〜」というのもありまずは独学で始めてみたのがきっかけでした。

独学、そしてコミュニティへの参加

--- そこからScalaにハマったと。

はい。学習を始めてから一番初めに驚いたのは case class でしたね。

最近のJavaはさっぱりで恐縮ですが、当時はカプセル化の文脈で gettersetter を書くのが主流でしたので、それをScalaでもやろうとしたときに case class を定義するだけでほぼ同等のものができることに衝撃を覚えました。

コードの記述量が少なくなればなるほど単純にバグも発生しにくくなると思ったので、そういったScalaが提供するシンタックスに大きな価値を感じました

--- なるほど。Scalaを学び始めた頃についてお聞きしたいのですが、どのように学習していったのですか?

よくある話だと思いますが、まず書籍を購入してとにかくサンプルコードを書いて動かしたのを覚えています。

そして「Javaで書くとこう、Scalaで同じことをするならどうなる?」というのを試しました。

初めはシンタックスに慣れるのが大変でした。このまま独学していても挫折するだろうなと思ったので、勉強会を調べてrpscalaの存在を知り参加してみました。

--- rpscala!

はい!

思えばそういった社外の方とコミュニケーションをする勉強会に参加するようになったのも、rpscalaが初めてだったしれません。

人見知りなところがあるので初めて質問したときはかなり緊張したのですが、皆さん優しく教えてくれました

実はrpscalaのconnpassのページのヘッダー画像にも映っているのですが、全く存在感が無さすぎて今でも「以前よく参加していました」と言うと驚かれることが多いです(笑)

件のrpscalaのヘッダー画像。2014年、当時Netflix社に在籍していたJason Swartz氏が来日されたときの写真。

そんな感じで、書籍や独学だけでなく実際にScalaを生業にしている方々の話を聞くことで、初心者の頃から理解の助けになっていたと思います。

ScalaMatsuriに参加する理由

--- ScalaMatsuriのスタッフをやろうと思ったのはなぜですか?

一番の理由は、昔の私のようなScalaを始めたいエンジニアさんの力にすこしでもなりたい という想いがあるからだと思います。

rpscalaに参加するようになった後にScalaを使う会社に転職したのですが、Scalaで書かれたプロダクションコードは結構複雑でちょっと挫折したんですよね。

「あれ〜、独学とは言え結構勉強してたと思うんだけどな...」と(笑)

一方で、ほぼすべてがイミュータブルで、型システムに守られた堅牢なシステムを構築できる点などなど、やっぱり書いていてとても楽しい言語だと再実感しました。その会社の先輩から丁寧に教えてもらったりするうちに、もっと多くの人がScalaを書くようになるとより良い世界になるのでは、と考えるようになりました。

また、rpscalaに参加したことでScalaに対する理解と想いが深まったように思いますし、いつだったかrpscalaでNetflixのエンジニアの方が来日された際に、世界で戦うエンジニアさんの貴重な話を聴くことができる、というのは素晴らしいことだなと思いました。

そうやって学習して行った結果、Scalaへの理解が深まり、Scalaを書いて生活ができて知り合いも増えました。今度はそういった役目を私が次にするべきだと考えるようになりました。

「コミュニティへの参加と、エンジニア同士の交流が、より深い学習へとつながる」という体験をした後に、海外の、それもScalaそのものを作っているエンジニアさんが登壇するというScalaMatsuriの当日スタッフ募集の告知を見て応募したのが始まりです。

--- ScalaMatsuriのスタッフをしてみてどうですか?

とくに時間を捻出するのが思ったより大変ですね(笑)

ですが、登壇者の方は寝る間を惜しんでスライド準備やトークの練習をしてくださったり、スポンサーさんも各社思い思いに準備してくださって毎年楽しいブースや素敵なノベルティーを用意してくださったり、参加者の方々も予定を調節して来てくださったりします。

そして当日、そういったScalaに興味がある様々な方々が一堂に会するのを見るのがたまりません(笑)

それから私はまったく英語がダメな人なのですが、拙いながらも海外のエンジニアさんと交流できるのがとても楽しいです。

やはりScalaを書きたくて

--- 転職のきっかけはなんですか?

前職では長いことRubyとJavaScriptを書いていたのですが、やはりずっとScalaを書きたい気持ちがあったんですよね。

なので、少しでもScalaの近くには居るようにとScalaMatsuriのスタッフ活動はずっと続けてました。

そんな中、ScalaMatsuri 2019の準備中に@showmant_さんと知り合ったのがきっかけでした。

当時は「スタートアップでScalaを採用するってすごい会社だな」くらいにしか思っていませんでしたが、ScalaMatsuri 2019のスピーカーディナーでアルプ社員の人と同卓になり、いろいろな話をしているうちにどんどん業務でScalaを書きたい気持ちが大きくなりました。

それからしばらくしていざ転職活動をしようかなと思ったときに改めて@showmant_さんと話をしまして、事業内容や会社のフェーズ、そして何より採用している技術などが面白そうだと思い入社を決めました。

--- どんなところに魅力を感じたか、詳しく教えてください。

はい。アルプは、まだ設立から2年経っていない法人向けクラウドソフトのスタートアップです。

商品管理・契約管理や請求オペレーションを効率化してサブスクの運営コストを削減しながら、ビジネスの自由度を広げるための「 Scalebase 」というサービスを開発しています。

このScalebaseでは、AkkaHTTPや、Monix、Eff、さらにモジュラーモノリスなどの技術を採用しています。 また、設計面ではClean ArchitectureとDDDを採用しており、特にユビキタス言語は気をつけてますね。毎日の開発がエキサイティングです(笑)

また、先日プレシリーズAで3.15億円の資金調達をさせていただくなど、まさにここからが勝負かなといったステージなんです。

jp.techcrunch.com

今使っている技術がどんな課題を解決するのかはある程度理解しているつもりなのですが、じゃあ自分が基盤として構築できるかというと、私自身はまだそこまでの自信がありません。言い換えると、それだけ自分にとって良い環境なんだと思います。

--- 最後になにかメッセージがあればお願いします。

月並みですが、アルプ株式会社は設立まもない会社ですので、全方向で採用を行っております。

気になる方がいらっしゃいましたら、まずは気軽にご連絡ください!

thealp.co.jp

scalebase.com

ScalaMatsuri 2020の日程を、10月17日(土)および18日(日)へ延期します。

こんにちは、ScalaMatsuri座長の麻植(@OE_uia)です。

この度、COVID-19の流行に伴い、ScalaMatsuri 2020の開催日を10月17日(土)および18日(日)へ延期することにいたしました。今回はその経緯と、延期に伴う各種対応、そして今後の展望についてお伝えします。

要約

  • 10月17,18日に延期をします。8月中旬時点のCOVID-19の流行状況次第で、オンライン開催にする可能性があります。
  • チケット購入者のうち希望者は、キャンセルおよび返金を受け付けます。3月31日までに返金申請フォームよりお申し込みください。
  • スポンサー企業のみなさまには、手続き不要で同額で同特典をご提供する予定です。
  • 更なるご支援は、個人向けは忍者スポンサーのお申し込み、企業向けはご協賛にて承っています。
  • 今後、新規でスタッフも募集します。ご興味ある方はconnpassグループにご登録をお願いします。

延期の経緯

ScalaMatsuriはScalaを愛する技術者のお祭りとして、2013年よりほぼ年次で非営利で開催している国際的なカンファレンスです。我々運営者は、ScalaMatsuriを開催する価値は大きく二つあると考えています。

ひとつは、カンファレンス会場における様々な出会いです。参加者が新しい技術を知ったり、講演、質疑や議論によって学びを深めたり、技術を軸に人、OSS、企業やサービスとの出会いの場を提供しています。

もうひとつは、知見流通のきっかけ作りです。カンファレンスの登壇は、国内外のスピーカーが技術資料を綿密に準備するきっかけとなります。結果として、日本のコミュニティに新たな技術的知見が定期的に流通する契機となったり、海外コミュニティと技術知見を交換することにも繋がります。

これらの価値を効率的に実現する方法として、大人数を収容可能な会場を借りて、ScalaMatsuriという場で講演やアンカンファレンス、OSSハッカソンなど様々な催しを実施しています。Scalaコミュニティが発展し続けるためには、これらの価値を継続して提供し続けることが肝要だと考えています。

しかしながらここ数ヶ月、COVID-19の感染が拡大し続ける懸念により、国や自治体から大規模イベントの開催の自粛が要請されています。結果として、協賛企業を含む多くの国内外の企業から従業員に対し、大規模集会への参加禁止や自粛を求める通達が出されている状態です。

そして専門家の意見*1*2を踏まえると、ScalaMatsuri 2020 開催予定であった5月時点のCOVID-19の流行予測は楽観視できません。よしんば5月に開催できたとしても多数の人が参加できない、もしくは参加者の安全のために、ScalaMatsuriが提供したい価値を直接損なうような施策を全面的に採用する必要があると見込んでいます。

また、オンライン開催というオプションについても検討しました。これまでに開催日を迎えた複数のカンファレンスにおいて、オンライン開催に急遽変更し、一定の成功を収めている旨の知見共有を目にしています。*3しかし、現状のScalaMatsuriのリソースおよび配信関連の知見をふまえると、2ヶ月間の準備期間では十分な価値を提供できるようになるとは断言できない、と判断いたしました。

結果として、参加者、協賛企業、スピーカー、そしてコミュニティに対しScalaMatsuri 2020が最大限の価値を提供するには、現時点で*4延期を決定するのがベストであると判断しました。延期後の日程は、10月17日(土)および18日(日)*5です。

万が一、8月中旬時点でもCOVID-19の流行状況の改善が見られない場合は、オンラインでの開催を検討しており、そのための準備も並行して実施する予定です。そのため、遠方からご参加予定の皆さんは、8月中旬アナウンスまでは航空券やホテルの予約をしないことをお勧めいたします。

延期による影響の最小化

ScalaMatsuriは、参加、登壇、協賛、そしてスタッフとしての運営参加をしてくださる方たちで成り立っています。そんな皆さんに対し、今回の延期ができるだけ悪影響を与えないよう、配慮したいと願っています。

チケット購入者

既にチケットを購入してくださった参加者の中には、延期後の日程では参加できないという方もいらっしゃるかと思います。楽しみにしていてくださった方、申し訳ありません。つきましては、今月いっぱいキャンセルを受け付けます。

キャンセル希望の方は、こちらの返金申請フォームより3月31日までにお申し込みください。10月17-18日に参加可能な方は、購入時のe-ticketで入場可能ですので、申請不要です。

CFP応募者

現在、既に行なった投票、および選考委員による選考会の結果をもとに、当落を決定しているところです。お待たせして申し訳ありません。

当落の結果は、2週間以内を目安に送付されます。この際、10月17日および18日の日程でも登壇可能か確認し、登壇可能であった場合、正式に採択されます。

また今後も、LTなど登壇枠へのご応募の機会を設ける予定です。詳細は後日アナウンスいたしますので、みなさんのご応募お待ちしております。

協賛企業

ScalaMatsuriのご支援、ありがとうございます。

協賛企業のみなさまには、お手続き不要で、同額の協賛費で同じ特典を引き続きご提供する予定です。 ScalaMatsuri Webサイトへのロゴや情報掲載の期間が実質増えることになりますので、ご活用くださいますと幸いです。

ScalaMatsuriを支援する方法

ScalaMatsuriご支援をしたいと申し出てくださっていたり、検討してくださっている皆様、誠にありがとうございます。

個人の方には忍者スポンサー、企業の方にはスポンサーシップをご案内しています。

忍者スポンサー

忍者スポンサー とは、個人向けのスポンサープランです。忍者スポンサー チケットをご購入いただけますと、入場権に加え、みなさんに喜んでもらえそうなプレゼント(企画中)を差し上げる予定です。

忍者スポンサーには、Doorkeeperのイベントページよりお申し込みいただけます。

チケット購入済みの方も、忍者スポンサーへアップグレードすることが可能です。その場合も返金申請フォームより、キャンセルをお申し込みください。

スピーカーの皆さんも、忍者スポンサーのお申し込みは歓迎です。

scalaconfjp.doorkeeper.jp

企業向けスポンサーシップ

引き続き、ScalaMatsuri 2020に協賛くださる企業を募集しています。ご応募お待ちしています。

スポンサー募集 | アジア最大級の Scala のカンファレンス

今後の展望

この8年間のScalaMatsuriの主催経験の中でも、このような事態は初めての経験です。依然として不確定要素が多く、かつ予算的にも(致命傷は避けたものの)例年よりも負担は大きいです。

しかし逆に考えると、ScalaMatsuriのCFPなど、例年必要な様々な準備に目処がたったところで、追加の準備期間が発生している稀有な状態です。この状況を、カンファレンスの価値をさらに高めたり、Scalaコミュニティを活気づけるために活かしたいと考えています。

具体的には、通常のScalaMatsuri 2020の開催準備に加え、以下のことに取り組んでいきたいと考えています。

  • 10月にオンライン開催を実施可能にする準備
  • 10月の本番までの間に実施する、サブオンラインイベントの企画・運営
  • LT等の追加登壇枠の募集

新しいチャレンジには、ScalaMatsuriを一緒に作っていく新しい仲間が不可欠です。そこで、スタッフを新規で募集することにしました。スタッフ参加希望の方は、ScalaMatsuri準備委員会スタッフミーティングのconnpassイベントページに参加登録してください。

次回のミーティング開催は3月末〜4月上旬を予定しており、後日詳細をアナウンスします。こちらのconnpassページよりグループに登録していただくと、次回イベント公開時に通知されます。

jsa.connpass.com

問い合わせ窓口

今回の延期を含めました、ScalaMatsuriに関するお問い合わせ全般は、下記のフォームより受け付けております。

ScalaMatsuri inquiry form / 問い合わせフォーム

まとめ

ScalaMatsuri 2020を延期し、10月17、18日開催とします。8月中旬のCOVID-19流行状況によってはオンライン開催にする可能性がありますので、遠方より参加予定の皆さんはまだ航空券・ホテルの予約をしないことをお勧めします。

購入済みチケットのキャンセルは、今月末まで受け付けています。CFPの当落結果は2週間以内を目処にお送りします。

協賛企業の皆さんには引き続き同価格にて、同特典をご提供する予定です。

スタッフ一同、みなさんの安全と健康を祈念しております。これからも末長く、ScalaMatsuriをよろしくお願いいたします。

*1:3月9日に厚生労働省が発表した新型コロナウィルス感染症対策専門家会議「新型コロナウィルス感染症対策の見解」の文書において、「日本の状況は、爆発的な感染拡大には進んでおらず、一定程度、持ちこたえている」、「しかしながら、感染者数は、一時的な増減こそあれ、当面、増加傾向が続くと予想されます。」、「今回、国内の流行をいったん抑制できたとしても、しばらくは、いつ再流行してもおかしくない状況が続くと見込まれます。」と、言及されています。

*2:一部報道によれば、厚生労働省は『ピークは感染経路の追跡が難しくなった時点から「おおむね3カ月後に到来」と推計。』しているとのことです。東京近郊では2月中旬頃から感染経路不明の感染者が出ているようですので、この推測通りならば5月頃にピークを迎える可能性があります。

*3:急遽オンライン開催へ変更された上で、その知見を提供してくださるカンファレンス運営者の皆様に、敬意の念を表するとともに、知見発信について感謝を申し上げます。

*4:これ以降は会場等のキャンセル費用がかかってきます。通常開催費用に加えキャンセル費用を負担することは難しいため、実質的に今が延期判断をする最後のタイミングでした。延期をしても、人件費をはじめとした固定費分はコスト増とはなります。

*5:今回の延期日程は、会場空状況や、5月に向けた準備を引き継げることなどを考慮しています。

ScalaMatsuri 2020のチケット販売とセッション投票を開始します!

こんにちは。ScalaMatsuri 座長の 麻植(おえ) です。

本日2月14日(金)より、チケット販売開始と、タイムテーブルを決めるためのセッション投票の開始をします。

(宣伝) スポンサーも募集中です

引き続き、招待枠つきのスポンサー企業も絶賛募集中です!

ScalaMatsuri 2020 - スポンサー募集

スポンサー特典には招待枠と、その招待枠数分のセッションの投票権もつきます。

2月21日(金)13:00 JSTまでにスポンサーへお申し込みいただいた場合は、お申し込みの翌営業日までに投票にご参加頂けるよう手配します。(21日のお申し込みへは当日中に対応いたします。)

もしご所属の企業から複数名のご参加を検討される場合などには、ぜひスポンサーのご検討もよろしくお願いします。

また今年度より個人向けの「忍者スポンサー」は、Doorkeeperからお申し込みいただけるようになりました。 お申し込みいただいた方には記念グッズを差し上げる予定です。こちらのお申し込みもお待ちしています。

TL;DR / まとめ

  • ScalaMatsuri 2020イベントページにて、チケット販売を開始します。
  • チケット購入者、スポンサー、スタッフで投票を行います。この投票は2月23日(日)20時59分JST(2月22日23時59分 AoE)をもちまして、終了いたします。
  • 今年の投票は、聞きたい順に順位づけしていただく選好投票形式です。ログイン後に、セッション一覧画面から投票できるようになります。

チケットの販売開始

今年のScalaMatsuri 2020は、5月15日(金), 5月16(土)の2日間の開催です。

  • 5月15日(金)はカンファレンス形式主体です。今回のCFPおよび投票でタイムテーブルが決まります。
  • 5月16日(土)はアンカンファレンス形式およびOSSハッカソンを予定しています。

そして本日、通しの入場チケットおよび、2日目のみ入場チケットの販売を開始しました。

ScalaMatsuri 2020 - Doorkeeper

なお、CFPへの応募者はまだチケットを購入する必要はありません。当選結果した場合はチケットなしで入場可能ですし、落選した場合はEarly Birdの価格で購入できるディスカウントコードを発行します。

今年もDoorkeeperを利用させていただいています。

セッション投票の方法

ScalaMatsuri 2020のタイムテーブルを決めるための投票です。この投票はチケット購入者、スポンサー企業、運営スタッフならびにCFP応募者によって行われます。

本ブログでは、主にチケット購入者およびスポンサー企業の招待枠行使者を対象として、投票方法について解説いたします。運営スタッフおよびCFP応募者については、下記の1.)で使用できるコードをScalaMatsuri準備委員会が発行し、ご連絡します。

1.) チェックインコードの確認

チケット購入時に送付されたチェックインコードを確認します。 Doorkeeper経由で ScalaMatsuri 2020 から送られてきているメールをご確認ください。

f:id:mocolog:20161125123652p:plain

そちらのチェックインコード(あなたのQRコード下の6桁の番号です。上画像参照)とsign in の際に使用するGoogle or Githubのアカウントをユニークなキーとして、後日投票をverifyしますので、お間違えのないようお願いします。

2.) 応募セッション一覧ページでのSignIn

2.) 応募セッション一覧ページの右上にある'ログイン' もしくは 'SignIn' ボタンを押してGoogle or GithubのアカウントでSign inしてください。Google Chrome推奨です。 (Authorize applicationボタンが出てきますので、押してください。)

f:id:oe_uia:20200212230509p:plain
SignIn方法

Sign in時にDoorkeeperのチェックインコードの入力を求められますので、1)で送られてきたチェックインコードを入力してください。

3.) 選好投票

ログイン後に、セッション一覧画面でVoteボタンをクリックすると投票することができます。

f:id:oe_uia:20200212231138p:plain
Voteボタン

昨年度に引き続き、順位づけをしていただく選好投票を採用しました。投票したいセッションを最大5つまで選んでいただき、それらに聞きたい度合いの順位をつけていただく、というものです。集計の際には、この順位をもとに重み付けします。票割れに強いルールを採用することで、投票数を減らし、投票のハードルも下げることを目指しています。

以下のように、ドラッグ&ドロップで順位をつけることができます。

f:id:oe_uia:20200212231113p:plain

この投票は2月23日(日)20時59分JST (2月22日23時59分 AoE)をもちまして、終了いたします。 締め切りまでの間は、何度でも投票するセッションや順位は変更可能です。投票完了時刻を過ぎた投票や、順位の変更などは無効となりますので、余裕を持ってご参加ください。

以上をもって投票は終了です。お疲れ様でした!

タイムテーブルの告知

タイムテーブルの公開は、3月上旬を予定しています。CFPへの応募者には、2月末〜3月頭頃に結果を送付します。

タイムテーブルは、投票結果および、選考委員による選考会によって決まります。

投票関連のFAQ

Q.投票結果はどこで発表されるの?

A.ScalaMatsuri Webサイト上にて告知いたします。

TwitterFacebookページ上でも告知しますので、これを機に是非フォロー|いいね お願いします。

Q.万が一落選した場合は、他に話すチャンスはないの?

A.ScalaMatsuri 2020では、Lightning Talks枠を設ける予定(詳細未定)のほか、5/16にアンカンファレンスを開催します。アンカンファレンスのトークアイディアはScalaMatsuri会期中に募集しますので、そちらでご応募ください。 アンカンファレンスについては、以下の記事をご覧ください。

アンカンファレンスとは? - ScalaMatsuri 2018

番外編 Scala World 2015レポート その2 アンカンファレンス編 - ScalaMatsuri運営ブログ

こちらでは5/16のカンファレンスパートより、多くセッション枠をご用意できる見込みとなっています。 残念ながら今回の投票で落選された方は、ぜひアンカンファレンスにてお話しください。

では、参加者の皆さんは奮ってご投票ください。

セッション募集に応募してみませんか? プレScalaMatsuri 2020を1月8日に開催します。

こんにちは、ScalaMatsuri座長の麻植(@OE_uia)です。

ScalaMatsuri 2020では、セッションを公募(CFP)して多様なアイディアを集めています。

ScalaMatsuriに応募する | アジア最大級の Scala のカンファレンス

スピーカーになりたい!と思って、プロポーザルを出してくれる人が多いほど、魅力的なScalaMatsuriのタイムテーブルを作ることができます。

また登壇経験のある人が増えることで、よい技術情報が増えたり、登壇経験をもとに次のチャレンジを始める人が増えていくと、もっとコミュニティが盛り上がってくれてよいな、とも思っています。

そこで「プレScalaMatsuri ~スピーカーになってみよう~」を、2020年1月8日に開催することにしました。

jsa.connpass.com

f:id:oe_uia:20191218190239j:plainf:id:oe_uia:20191218190319j:plain
プレScalaMatsuri 2019の様子。ホワイトボードを囲んでアイディアについてわいわい相談します。

プレScalaMatsuri とは?

スピーカーには興味があるけれども、なんとなくハードルが高そうに思っている方に、そんなことないんだよ、というためのイベントです。

ScalaMatsuriのCFP要項や、応募の流れ、採択後にスピーカーになる流れなどを解説するほか、登壇経験豊富な がくぞさん(@gakuzzzz) をお招きして、プロポーザルの書き方の実例を学びます。

その後、参加者のみなさん が話せそうなアイディア を書き出して、プロポーザルへと一緒に煮詰めていくワークショップを実施します。

参考: 昨年度の記事 - 新年のご挨拶と、プレScalaMatsuriイベント「スピーカーになってみよう」開催のお知らせ

プレScalaMatsuri 参加者から、スピーカーになった田所さんのインタビュー

開催を記念して、昨年度のプレScalaMatsuri 2019に参加されてプロポーザルを応募し、採択されて ScalaMatsuri 2019 に登壇された田所 駿佑 (@todokr)さんに、お話を伺いました。

f:id:oe_uia:20191218185714j:plain:w600
田所駿佑さん

プロフィールについて教えてください

株式会社ビズリーチという会社のソフトウェアエンジニアです。 現在は、チームの成長につながる人事評価クラウド「HRMOS評価」というプロダクトのサーバーサイドを中心に、SPAのフロントエンドやインフラを担当しています。

田所さんのScalaMatsuriでの登壇内容について教えてください

AWS Lambdaでのcold startにかかる時間を削減する手法としてScala.js、Scala Native、GraalVMのnative-imageの3つの手法を実験した結果についてお話しました。低スペックなLambdaのJava8ランタイムでは8秒ほどかかっていたcold startが、これらの手法で数十~数百msになることを示しました。

speakerdeck.com

どういうきっかけで、プレScalaMatsuri「スピーカーになってみよう」に参加されましたか?

チームの同僚に誘われたのが一番のきっかけです。 ScalaMatsuriはいつか話す側として参加したいなあと考えていたので、いい機会かもしれない、くらいの軽い気持ちでの参加でした。 最初は、明確に「よし、プロポーザルを出してやるぞ」という感じではなかったです。

ただ、実際にプロポーザルを書き始めてみると、真剣になってきますね(笑)

どういうセッションだったら、みんな興味を持ってもらえるか、役に立つのか、ということを考えているうちに、「選ばれたらいいな」って気持ちが段々強くなっていきました。なので採択されたことを知ったときはかなり興奮しました。

プレScalaMatsuriに参加してよかったこと、役立ったことはありますか?

プレScalaMatsuriの1週間前に、今までやってきたことを棚卸ししました。一番の推しネタとして、仕事で使っていた認証認可ライブラリのplay-silhouetteの入門の話と、sbtのカスタムタスク入門の話、そして今回の登壇ネタのLambdaでScalaを使う話についてなら話せるかもしれない、という感じで、ざっくりとアイディアを作って参加しました。

プレScalaMatsuriではネタの候補たちに参加者のみなさんがフィードバックをしてくれるのですが、いざ話してみるとLambdaでScalaを使う話に興味をもっていただけたので、自分の想像とだいぶ違うことに気づきました。

そのギャップを埋められたのが、プレScalaMatsuri ならではの価値だと思います。

プロポーザルを応募する際に、気をつけたこと、苦労したことはありますか?

書き始めは、結構悩むことが多かったです。

タイトルにキーワードを詰め込みたいのですが、そうすると端的に表現することが難しいんです。

ただ、そこから周りにアイディアを話しているうちに、蒸留されていってキーワードが抽出されていく、話のコアが見つかっていくような感覚がありました。「こういうプロポーザルを出そうとしているんです」と、周りに口頭で説明していると 「あ、この表現使えるな」というように見つかっていったんです。

あとは過去のScalaMatsuriトークのタイトルと説明を、すごく読みました。文章のテンションを参考にしたり、自分が 面白そう と思ったセッションの説明文を、参考にしたりしました。

採択の通知がきた時、たしか私は休日で、パン屋さんにいたんです。 そこで携帯をみて、採択を知りました。もともと競争があると聞いていたので「まさか私が!?」という気持ちです。急にドキドキしてきたのを覚えています(笑) そして、真っ先に妻に報告しました。

登壇準備はどうでしたか?

もともとLambdaは仕事でよく使っていたのですが、Javaランタイムの起動時間が気になっていたので、ScalaでLambda関数を書くことはありませんでした。でもGraalVMのnative-imageなら速くなるよね、というアイディアからスタートしました。 せっかくなのでScala.jsと、気になりつつ触れていなかったScalaNativeとの比較を盛り込みました。それにより、それぞれの個性が見えてくるかなと思ったんです。

登壇が決まってからはまず発表の大枠を作って、まだ技術的に検証が足りてないところを洗い出しました。 最初に、Lambdaで使ったことがなかったScalaJS, ScalaNative, GraalVMのnative-imageのそれぞれをHello Worldしてみました。ScalaNativeをDockerでビルドするのが想像以上に大変でしたね。ビルドに必要なライブラリの置き方やオプションの設定で詰まって、最終的にDockerfileがものすごい長さになってしまいました(笑)

f:id:oe_uia:20191218185857j:plain:w600

あまり使っていなかったScalaNativeの検証を、後回しにしなくてよかったなって思っています。

勉強がてら、Amazonとか楽天とかで使える「グローバル欲しいものリスト」サービスをプライベートで作ってみたりもしました。

ScalaMatsuriのスピーカーになってみていかがでしたか?

月並ですが、発表後にいろいろな方にオンライン、オフラインの両方でフィードバックをいただけたのが嬉しかったです。ScalaMatsuriには参加をされていなかった方にも、発表資料へのコメントをいくつかいただきました。

また発表の練習に付き合っていただいた社内のエンジニアのみなさんにも感謝です。社内の勉強会用スペースでリハーサルを行ったのですが、内容や構成についてワイワイと議論できたのが大変助かりました。

スピーカーになることに関心のある方に向けて、メッセージがあればお願いします。

より良いプロポーザルを考える上で、プレScalaMatsuriはとてもありがたいイベントでした。スピーカーになりたい方にはぜひおすすめしたいです!

編集後記/最後に

「プレScalaMatsuri 2020 ~スピーカーになってみよう~」は、2020年1月8日開催です。 ご参加お待ちしています!

jsa.connpass.com

私、ScalaMatsuriで転職しました Vol.5 マーベリック株式会社 リチャード伊真岡(@RichardImaokaJP)さん

こんにちは、ScalaMatsuri座長の麻植(@OE_uia)です。

ScalaMatsuri 2020のスポンサー募集を開始します!

2020年5月15日(金), 16日(土)開催のScalaMatsuri 2020に、協賛してくださる企業・組織を募集します。

プログラミング言語Scalaに関する、日本最大のイベントです。技術コミュニティ貢献、参加者へのブランディングや接点作りの機会としてぜひご利用ください。

お申し込みはこちら。

スポンサー募集 | ScalaMatsuri 2020

私、ScalaMatsuriで転職しました Vol.5

そこで今回は募集開始を記念して、「私、ScalaMatsuriで転職しました」インタビューの第5回をお送りします。

ScalaMatsuri 2014以降ずっと Platinum / 将軍スポンサーとしてご協賛いただいているマーベリック株式会社さんに今年転職された、リチャード 伊真岡さんにお話をお伺いしました。

f:id:oe_uia:20191205152317j:plain:w400
リチャード伊真岡(@richardimaokaJP) さん

インタビュー

--- リチャードさんの現在のお仕事や、その他の活動について教えてください。

続きを読む

ScalaMatsuri 2020は4トラックで5/15(金), 16(土)開催!セッションも公募します。

こんにちは、座長の麻植(@OE_uia)です。

ScalaMatsuri 2020の開催日程決定!

アジア最大規模のScalaカンファレンス、ScalaMatsuri 2020の日程が決まりました! 今回は5/15(金)および16(土)に開催します。

ScalaMatsuri 2020 | 日本最大級の Scala のカンファレンス

今回のカンファレンス初日は、昨年度より 1トラック増やし、合計4トラックでお送りします。 これにより、Scalaビギナー向けのセッションをより多く採用できることを期待しています。

また5/16(土)には若干のカンファレンストラックと、当日にセッションを決定するアンカンファレンスと、毎年恒例となったOSSハッカソンを開催する予定です。

なお前回好評だった初心者向けのワークショップについては、新たな試みとしてScalaMatsuri会期中ではなく通年で開催することを予定しています。 こちらについては後日、詳細をアナウンスします。

セッション募集

600人が参加するアジア最大のScalaのイベントで、スピーカーになってみませんか?

  • 今取り組んでいる面白いプロジェクトについて知ってもらえる
  • 好きな技術を広められる
  • 普段仕事で接する以外の人たちに、自分と得意分野について知ってもらえる
  • 自分の取り上げた技術について、参加者や他のスピーカーと議論できる
  • スピーカーディナーで、他の分野のエキスパートと少人数で交流できる

個人的には、スピーカーになることは、カンファレンスを最も楽しめる方法だと思っています。

なにか喋ってみようかな?と思った方は、ぜひ気軽に応募してみてくださいね。

募集カテゴリ

題材はScalaビギナー向け、もしくはScalaコミュニティの人たちが興味をもつものなら、なんでもかまいません。

昨年度は、このようなセッションが最終的に採用されたタイムテーブルとなりました。

ScalaMatsuri 2019|日本最大級の Scala のカンファレンス

また今年度、「Scalaビギナー向け」 というカテゴリを新たに用意しました

このカテゴリは、Scalaでコードを書き始めた人がよりScalaを使いこなして、素早くデバッグしたり、適切な抽象化を使いこなしたり、クリーンで安全なコードを書けるようになるためのセッションです。 例えば、以下のような参加者を対象としたセッションが該当します。

  • Scalaのコレクション操作をするときにmap, flatMap, filter, findなど、基本的なもの以外あまり使ったことがない。
  • for式で書けるものとそうでないものの区分や、書ける条件がよく分からない。
  • Option、Try、Eitherの使い分けがよく分からない。つい例外を投げてしまう。
  • case classとclass、abstract class、traitなどの違いがよく分からない。
  • パターンマッチを、match式以外で使ったことがない。複数のパターンを組み合わせて使っていない。
  • 型パラメーターやimplicitの使い所がよく分からない。それらが使われたコードを読めない。

新しい切り口でこういった基礎を解説するセッションや、再入門するセッションなど、さまざまな切り口でのセッションを募集します。ぜひご応募ください。

その他要項

今年度は40分と、100分(うち20分は休憩)の2つのセッション枠を用意しています。 一般的なレクチャー形式のセッションだけでなく、参加者に手を動かしてもらうワークショップも開催可能です。

ご応募していただいたセッション案は、応募締め切り後に、選考委員による選考、および参加者による投票によって採用されるかどうか決まります。

なお、応募時に旅費助成金を希望していた方には、その出発地、および学生か否かに応じて、USD 500 ~ 1500までの旅費がサポートされます。

そのほか詳細については、こちらを参照してください。

http://scalamatsuri.org/ja/cfp

2020/2/1 23:59 Anywhere on Earth (2/2 20:59 JST)締め切りです。

応募フォームはこちら。2名以上で実施したい場合は、本フォーム最後の設問中のリンクから、追加登壇者について登録してください。

ScalaMatsuri 2020 セッションの募集フォーム

Webサイトをリニューアルしました!

今年度から、ScalaMatsuri Webサイトを全面リニューアルしました。 Twitter Bootstrap + Jekyllで構築していたものを、Nuxt.js (Vue.js)にリプレイスしています。

ScalaMatsuri 2019開催前から尽力されたScalaMatsuri website maintainerのみなさん、本当にお疲れ様でした!

f:id:oe_uia:20191112000321p:plain:w480
ScalaMatsuri 2020 website contributors graph

本WebサイトはOpen Sourceですので、typoなど見つけた際はお気軽にPullReqestをお送りください。

GitHub - scalamatsuri/2020.scalamatsuri.org: ScalaMatsuri 2020 official website repository

みなさんのセッションのご応募、お待ちしています!

Scala研修テキストが株式会社ドワンゴ様から寄贈されました

まえおき

こんにちは。Japan Scala Association (JSA)の水島(みずしま)です。

今回は、Scala研修テキストが株式会社ドワンゴ様から、一般社団法人Japan Scala Associationに寄贈されたことを報告したいと思います。

Scala研修テキストとは

Scala研修テキストは、私が前職のときに、当時の同僚とともに作り上げた、新卒エンジニア向けのScala研修テキストです。

元々は、ドワンゴ社内でのScala研修を実施するために執筆したものですが、2016年にCC BY-NC-SA 3.0で公開され、主要メンテナである私を中心として改良やメンテナンスを続けてきました。また、当時の同僚の協力によって、PDF版EPUB版も入手できるようになっています。

幸い、Scala研修テキストは、Scalaを学習しようと思っている初学者の方のみならず、Scalaを利用している様々な企業にも実際に研修で利用していただいているようです。

寄贈の経緯

Scala研修テキストはScalaのバージョンアップその他に伴って継続的にメンテナンスを行ってきましたが、メンテナンスの負担は小さくありません。主要メンテナの一人である私の転職が契機となりまして、ドワンゴ社内でメンテナンスし続けるよりも、コミュニティでメンテナンスしやすい形態にした方が、双方にとってメリットがあると合意するに至りました。

今後の方向性

形式的にはJSAに譲渡するという形になっていますが、日本のScalaコミュニティにとって有用となる形で、継続してメンテナンスしていく予定です。また、「Scala研修テキスト」ではなく、Scala初学者がScalaを学ぶ際の助けになる「Scala学習テキスト」を目指してテキストの改良を続けていきます。

ドワンゴ社での新人研修のためのテキスト、という制約はなくなったので、GitHubのリポジトリを通じて、幅広い改善の提案や修正を受け入れていきます。当面は、私を中心としたレビュー体制で行く予定ですが、今後の「Scala学習テキスト」に貢献したいという方がいれば、GitHubのissueで議論をしていきたいと思いますので、よろしくお願いします(Twitterで連絡をいただいても構いません)。

謝辞

Scala研修テキストを寄贈してくださった株式会社ドワンゴ様、どうもありがとうございます。また、テキストの執筆や改良に関わってくださった方々、大変ありがとうございます。