SlideShare a Scribd company logo
1 of 47
Scalaに至るまでの物語
Septeni × Scala 第一回
2015/02/19
前説
セプテーニ・グループとは
• ネット広告の代理店が本業
– エンジニア知名度無いが、かなり大きい会社。
• ホールディングス制
– 1部署1会社のようなもので、いろいろやっています。
株式会社セプテーニ
(ネット広告事業部)
株式会社セプテーニ・オリジナル
(開発部)
コミックスマート株式会社
(マンガ事業部)
セプテーニ・ホールディングス
…他19社
自己紹介
• 杉谷(@sugitani)ともうします。
– 2013/7にセプテーニに入社
• 今はセプテーニ・オリジナル所属
• セプテーニ株式会社の執行役員・技術担当
• 株式会社コミックスマート・CTO
• GANMA! というオリジナルマンガサービスをやっています。
– 前職はドワンゴ
• ニコニコ動画モバイル配信系
– プロトコル設計・動画変換プログラム・docomo iアプリ
• ニコニコ生放送初代リーダー
• SmartySmile
• ニコニコアラート
本日の概要
• 入社して1年半。いろいろやった結果、セプ
テーニはScalaをメインでやっていく流れになり
ました。
– 弊社は弊社の知名度向上と、Scalaの普及加速を
狙い、情報公開を進める方向です。
– 僕のパートでは前職と現職を通して、どうしてこう
なったのか、どうやってこうなったのか、共有しま
す。
– それぞれの所属する組織でのScala普及に役立
つこと、を目指します。
それでは始めます。
Scalaを始める前のお話
昔話。
ドワンゴ在籍@2012
• ニコ生を離れて、いろんなことをやっていた。
• ニコ生でPHPは”ちゃんとやるには難しすぎる”と
痛感
– 強いIDEと型がほしいと思った
– 以降の自分実装はplayframework × javaを採用
• XML地獄に落ちずに、Javaでさくさくと実装できるのは新鮮
だった。
• (当時は)結構満足していた
• ニコニコAndroidチームがScala正式採用
– へー。と思ってた。
ドワンゴ在籍中@2012〜2013
• ドワンゴのScala普及は加速
– 監督していたプロダクト(実装は自分ではない)では、開発者
の強い希望でScalaに。
• 自分の分をplay × javaでごりごりやりながら、横目で
見ていた。
• 読めなかったのでコードレビューも出来なかったが、楽
しそうだとはおもっていた。
Scalaに対する当時の印象
• すっごい重いんでしょ?
• 型ありは素敵だけど、Javaで良くない?
• Scalaのエンジニアなんて獲得できなくない?
• 一回経験したらJavaに戻れないんでしょ?こ
わい!
こういうことを、いまだに言っている人いたら「ばーか」といってあげてください
なぜドワンゴを辞めたのか?
• 企画を考える仕事もしていた。
• ある企画を考え川上さん(ドワンゴ会長)に提案
• 好印象!
• 「でも君ってコード汚いっていうし(実装は)任
せないほうがいいよね?」
( ゚д゚)
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
こう言われても仕方が無い
4代目開発リーダーsifueさん
Developer Summit 2014の発表
これの犯人は?
自分でしょ?
振り返り
• 当時の自分には、複雑さに立ち向かうという
”概念”がなかった
– テスト無し・ 設計やチーム運営もろもろ全部我流
• リクエストに応え続けるのが何よりもの是と思っ
ていた
– 悪いことに成果も激しくでてしまった。
– 結果、チームとしても会社としても、自分のやり方が
是となってしまった。
• システムも体制も、最初に作った人間に大きな
責任がある。
– 後から入ったメンバーに出来ることは少ない。
価値観
• 自分にニコ生は「価値が無い」
– 会社としては大成功
• 収益の何割をも占める主力事業
– エンジニアとしては無価値
• いくら貢献しようが自分は「生ゴミのようなシステムを
作った人」である。
• 若かっただ・時間が無かった・技量が無かった、だの
一切の言い訳は無用
• 「安定した品質」 && 「誇れる組織」 && 「価値あるプロ
ダクト」を自分で作ってみせるまで、打ちひしがれたま
ま。
転職
• やり直すために、転職を決意。
• GANMA! の立ち上げと、組織改革をミッション
にセプテーニに入社
– 今後こそ、ちゃんした組織とプロダクトを作る決心
– Scala、ドメイン駆動開発(DDD)、スクラム、各種開
発支援ツールの導入、チャットツールの普及、黒
くない裁量労働制の導入、人事制度改革、etc…
昔話以上。
次は、転職後の考えや、具体的行動等をご紹介。
なぜScalaなのか?
“開発がしやすいから、ではちょっと弱い”
1. 簡単だから
2. 継続できるから
私たちがやりたいこと
• 美しく読みやすいコードを見たい書きたい
• バグが少ない構造を組み上げたい触りたい
• Scalaだと間違いなくやりやすいのは分かる
– 型がある
• 簡単なテストを自動で書いてくれるようなもの。
• IDEの補完とリファクタがよく効く
– Nullがない
– いくらでも華麗に書ける
別にPHPでもできる
• PHPだろうがJavaだろうがCだろうが、ちゃんとやれば綺麗
に書ける。
– テストを書く、CI回す。
– 息を吸うようにリファクタする。
– 設計を学ぶ考える。
– DRYなり各種法則を守る。
• 事実として、意識さえ高ければどの言語でも問題は無い
• でも、そんなに出来る人、採用できる?
• そんなに意識の高い人が「PHPやりたい」って言う?
• ずっと意識持ち続けられる?
• システムは何年も生きるし、人も入れ替わるよ?
何のためのScalaか。
• ちゃんとした実装を行い続けるためにScala。
– 目指す状態をめざし続けるなら、
Scalaの方が逆に体力を使わない。
• ちゃんとしたい人と出会うためにScala。
– Scalaやってる、やりたい、と言う人は、きっと意識
も高い。(広く普及すると、falseになるけど)
– きっと自分たちに興味を持ってもらえる確率も高
い
– 検索: Pythonのパラドックス
昔の自分のへの回答
• 重いんじゃない?
– フルビルドは重いが、部分コンパイルが発達。
• 札束で叩けば全然平気
• 弊社はMacbook Pro15インチの最上位プランを支給
– ただしCtrl+F5駆動開発だと厳しい
• Scalaエンジニアなんて調達できないぞ?
– 目的は良い人に会うこと。人の多い言語にして低マインド
の人をとれるようになっても意味は無い。
– 始めたい人に始めてもらおう、言語の習得は問題に成ら
ない。
• Scala経験したらJavaに戻れない
– 真実だ。
普及のための手続き
自分の組織をよくしたい作戦
空気を動かそう
• あなたの上長が、いきなり「話は分かった
Scalaにしよう!!」と言うとは限りません。
• あなたの同僚が全員「Scalaやりたい!!」と
言うとは限りません。
• 大体、みな最初は半信半疑です。
• あなたが空気を動かす必要があります。
成功するしかない
• どうにかして、あなたが何かを新規作成するときの
リーダーになってください。
• Scalaを使って”開発に成功”してください
– 新規開発も追加開発も、常に予定通り。
– 不具合も障害も少ない。
– 終始、安定した開発チームとして見える状態が目標。
• 成功するために、正しい手段・手法を活用してください
– 上長も同僚も、あぁ”Scala”も含めて素晴らしいな違うな、
と思わせることが出来れば勝ちです。
– Scalaを使う以外にも、様々な知識・技術を動員する必要
があります。
成功するための技術:テスト
• あなたの書いたコードは、未来永劫最適です
か?
– 今後一切書き換えることはありませんか?
– 未来も含めて完璧なコードを書けるのですか?
– 神でなければNo
• 開発の命綱としてテストは当然書きましょう。
成功のための技術:プルリ
• Githubとそのクローンにある「Pull-Request」
– コードをマージする時に”必ずレビューを行う”が
実現できる
• 一人でだけで良いコードを書き続けというの
は、大抵の人間には難しいです。
• 今現在、GithubかGithubもどきが無い場合、
どうにかして導入しましょう。
成功するための技術:スクラム
• おなじみのチーム管理手法
• 教科書通りに実行すると大変強力
– ベロシティを元に、精度の高いリリース予定日を算出
できる = 予定日ありき、をやめられる。
– 技術的負債を”負う覚悟”をプロダクトオーナーに委
ねることができる
• エンジニアチームは選択肢を出すだけ「ベストは21pt。妥協
すると13pt。スゴくやっつけると3ptだけど副作用あるのであ
とで21ptを別ストーリーとして残ります。どれにしますか?」
• デスマーチ防止・リリース前ぐだぐだ、謎の開発
遅延。などいろいろな問題に効果があります
成功するための技術:DDD
• 「ドメイン駆動開発」
• 設計の難しさに立ち向かうた
めの技術
– ざっくり:作りたい物の本質(ドメ
イン)を言葉で説明しよう、かつ
言葉と実装を一致させよう。
• システムの見通しがとてもよく
なります。
• 非エンジニアとの対話も「翻
訳無し」で行えるようになりま
す。
GANMA!での事例(初期)
• Playframework + scala
• テスト完備、DDD採用
• Chef とfabricでインフラ管理、Vagrantも活用
• サーバはREST API だけ、 クライアントは
Sencha Touch × Cordova という構造
• 最初期はメンバーも居ないのでスクラムでは
なく、見積もりもせず全力消化
– まだスクラムしらず。
GANMA!での事例(〜現在)
• メンバーも増え、管理に限界を感じたのでスクラムを
導入
– 翔泳社のアジャイルアカデミーに研修を受けに行った
– 講師さんを呼び、社内開発関係者全員にLEGO研修をうけ
てもらった(役員含む)
– とにかく教科書通り、を徹底した
• 新規加入メンバー向けのチュートリアルも整備
– チュートリアルになる課題をやってもらう(スプリントの課
題としてね)
– アジャイルアカデミーのTDD研修も受講し、その教え方を
参考に社内でテスト普及活動も実施
GANMA!での事例(結果)
• 最初期リリース以外はかなり見積もりに忠実に
なった
– GANMA!ブラウザ版や、兄弟サイト(つぶやき
GANMA!)のリリースも、見積もり通りにリリース。
• 負荷や不具合にはほぼ悩まされない
• GANMA!が開発者育成場になった
– GANMA!に留学してスクラムやDDD、テストやScalaを
学び、各プロジェクトに持ち帰る。
• 今後の新規プロダクトは、特に理由が無い限り
GANMA!系統より原始的にはならない流れに。
「普及させるにはどうすればよいか」
をまとめると
道具をそろえてがんばれ。
以上。
如何でしたか?
身もふたも無い?
質疑応答。
がんばりましょう!
ご静聴ありがとうございました!

More Related Content

What's hot

[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメSatoshi Takami
 
Pycon reject banditアルゴリズムを用いた自動abテスト
Pycon reject banditアルゴリズムを用いた自動abテストPycon reject banditアルゴリズムを用いた自動abテスト
Pycon reject banditアルゴリズムを用いた自動abテストShoichi Taguchi
 
블록체인 과 인터넷 서비스의 진화-20220607.pdf
블록체인 과 인터넷 서비스의 진화-20220607.pdf블록체인 과 인터넷 서비스의 진화-20220607.pdf
블록체인 과 인터넷 서비스의 진화-20220607.pdfdoo rip choi
 
Presentation on the Uniteverse Program of Meta Force - English
Presentation on the Uniteverse Program of Meta Force - EnglishPresentation on the Uniteverse Program of Meta Force - English
Presentation on the Uniteverse Program of Meta Force - EnglishMeta Force File Slide
 
CQRS+ESをAkka Persistenceを使って実装してみる。
CQRS+ESをAkka Persistenceを使って実装してみる。CQRS+ESをAkka Persistenceを使って実装してみる。
CQRS+ESをAkka Persistenceを使って実装してみる。Matsushita Satoshi
 
エキスパートGo
エキスパートGoエキスパートGo
エキスパートGoTakuya Ueda
 
BigQueryでJOINを極める!
BigQueryでJOINを極める!BigQueryでJOINを極める!
BigQueryでJOINを極める!Miki Katsuragi
 
wq-3. M/M/S 待ち行列,アーランの即時式モデル
wq-3. M/M/S 待ち行列,アーランの即時式モデルwq-3. M/M/S 待ち行列,アーランの即時式モデル
wq-3. M/M/S 待ち行列,アーランの即時式モデルkunihikokaneko1
 
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfesレベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfesTokoroten Nakayama
 
원티드 발표자료 나수현 2018
원티드 발표자료 나수현 2018원티드 발표자료 나수현 2018
원티드 발표자료 나수현 2018Soohyun Na
 
Amazon Echo Showの ユーザー補助機能
Amazon Echo Showのユーザー補助機能Amazon Echo Showのユーザー補助機能
Amazon Echo Showの ユーザー補助機能Toru MOCHIDA
 
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗くSpring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗くapkiban
 
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介Amazon Web Services Japan
 
OSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係についてOSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係についてTakuto Wada
 
あなたの知らないnopたち@ラボユース合宿
あなたの知らないnopたち@ラボユース合宿あなたの知らないnopたち@ラボユース合宿
あなたの知らないnopたち@ラボユース合宿MITSUNARI Shigeo
 
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018Yusuke Suzuki
 
zshでコマンドライン履歴を活用する
zshでコマンドライン履歴を活用するzshでコマンドライン履歴を活用する
zshでコマンドライン履歴を活用するHideaki Miyake
 
株式会社LIGを事例に学ぶ、実践的アクセス解析
株式会社LIGを事例に学ぶ、実践的アクセス解析株式会社LIGを事例に学ぶ、実践的アクセス解析
株式会社LIGを事例に学ぶ、実践的アクセス解析webcampusschoo
 

What's hot (20)

[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
[JJUG CCC 2021 Spring]Eclipse ユーザのための VSCode のススメ
 
Pycon reject banditアルゴリズムを用いた自動abテスト
Pycon reject banditアルゴリズムを用いた自動abテストPycon reject banditアルゴリズムを用いた自動abテスト
Pycon reject banditアルゴリズムを用いた自動abテスト
 
블록체인 과 인터넷 서비스의 진화-20220607.pdf
블록체인 과 인터넷 서비스의 진화-20220607.pdf블록체인 과 인터넷 서비스의 진화-20220607.pdf
블록체인 과 인터넷 서비스의 진화-20220607.pdf
 
Presentation on the Uniteverse Program of Meta Force - English
Presentation on the Uniteverse Program of Meta Force - EnglishPresentation on the Uniteverse Program of Meta Force - English
Presentation on the Uniteverse Program of Meta Force - English
 
CQRS+ESをAkka Persistenceを使って実装してみる。
CQRS+ESをAkka Persistenceを使って実装してみる。CQRS+ESをAkka Persistenceを使って実装してみる。
CQRS+ESをAkka Persistenceを使って実装してみる。
 
エキスパートGo
エキスパートGoエキスパートGo
エキスパートGo
 
BigQueryでJOINを極める!
BigQueryでJOINを極める!BigQueryでJOINを極める!
BigQueryでJOINを極める!
 
Maven基礎
Maven基礎Maven基礎
Maven基礎
 
wq-3. M/M/S 待ち行列,アーランの即時式モデル
wq-3. M/M/S 待ち行列,アーランの即時式モデルwq-3. M/M/S 待ち行列,アーランの即時式モデル
wq-3. M/M/S 待ち行列,アーランの即時式モデル
 
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfesレベルを上げて物理で殴れ、Fuzzing入門 #pyfes
レベルを上げて物理で殴れ、Fuzzing入門 #pyfes
 
実践 NestJS
実践 NestJS実践 NestJS
実践 NestJS
 
원티드 발표자료 나수현 2018
원티드 발표자료 나수현 2018원티드 발표자료 나수현 2018
원티드 발표자료 나수현 2018
 
Amazon Echo Showの ユーザー補助機能
Amazon Echo Showのユーザー補助機能Amazon Echo Showのユーザー補助機能
Amazon Echo Showの ユーザー補助機能
 
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗くSpring Initializrをハックする-カスタマイズを通してその内部実装を覗く
Spring Initializrをハックする-カスタマイズを通してその内部実装を覗く
 
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
iot@Loft#14-LT4-AI /機械学習に活用できる AWSのエッジソリューションのご紹介
 
OSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係についてOSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係について
 
あなたの知らないnopたち@ラボユース合宿
あなたの知らないnopたち@ラボユース合宿あなたの知らないnopたち@ラボユース合宿
あなたの知らないnopたち@ラボユース合宿
 
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
 
zshでコマンドライン履歴を活用する
zshでコマンドライン履歴を活用するzshでコマンドライン履歴を活用する
zshでコマンドライン履歴を活用する
 
株式会社LIGを事例に学ぶ、実践的アクセス解析
株式会社LIGを事例に学ぶ、実践的アクセス解析株式会社LIGを事例に学ぶ、実践的アクセス解析
株式会社LIGを事例に学ぶ、実践的アクセス解析
 

Viewers also liked

“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂ikuyaterasaka
 
Try using Aeromock by Marverick, Inc.
Try using Aeromock by Marverick, Inc.Try using Aeromock by Marverick, Inc.
Try using Aeromock by Marverick, Inc.scalaconfjp
 
2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史
2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史
2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史Yasuyuki Sugitani
 
TDDBC in dwango vol.1
TDDBC in dwango vol.1TDDBC in dwango vol.1
TDDBC in dwango vol.1Hiromu Shioya
 
軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2
軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2
軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2Michihito Shigemura
 
2016 Android × Scala @ScalaMatsuri2016
2016 Android × Scala @ScalaMatsuri20162016 Android × Scala @ScalaMatsuri2016
2016 Android × Scala @ScalaMatsuri2016Yasuyuki Sugitani
 
Scala界隈の近況
Scala界隈の近況Scala界隈の近況
Scala界隈の近況takezoe
 
Ruby使いのためのScalaのススメ
Ruby使いのためのScalaのススメRuby使いのためのScalaのススメ
Ruby使いのためのScalaのススメOuka Yuka
 
Scalaで萌える関数型プログラミング[完全版]
Scalaで萌える関数型プログラミング[完全版]Scalaで萌える関数型プログラミング[完全版]
Scalaで萌える関数型プログラミング[完全版]Ra Zon
 
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだScalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだyoshiaki iwanaga
 
Scala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscalaScala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscalaKazuhiro Sera
 
Reactive microservices with play and akka
Reactive microservices with play and akkaReactive microservices with play and akka
Reactive microservices with play and akkascalaconfjp
 
Scala@SmartNews AdFrontend を Scala で書いた話
Scala@SmartNews AdFrontend を Scala で書いた話Scala@SmartNews AdFrontend を Scala で書いた話
Scala@SmartNews AdFrontend を Scala で書いた話Keiji Muraishi
 
Device Fingerprinting: オンライン広告効果計測への応用
Device Fingerprinting: オンライン広告効果計測への応用Device Fingerprinting: オンライン広告効果計測への応用
Device Fingerprinting: オンライン広告効果計測への応用Koji Suganuma
 
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuriバッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuriKazuki Negoro
 
あなたのScalaを爆速にする7つの方法(日本語版)
あなたのScalaを爆速にする7つの方法(日本語版)あなたのScalaを爆速にする7つの方法(日本語版)
あなたのScalaを爆速にする7つの方法(日本語版)x1 ichi
 
Without Resilience, Nothing Else Matters
Without Resilience, Nothing Else MattersWithout Resilience, Nothing Else Matters
Without Resilience, Nothing Else MattersJonas Bonér
 
Why Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuriWhy Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuriYuta Okamoto
 

Viewers also liked (20)

“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂
 
Try using Aeromock by Marverick, Inc.
Try using Aeromock by Marverick, Inc.Try using Aeromock by Marverick, Inc.
Try using Aeromock by Marverick, Inc.
 
2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史
2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史
2016 ScalaMatsuri LT / セプテーニ・オリジナルの文化と歴史
 
TDDBC in dwango vol.1
TDDBC in dwango vol.1TDDBC in dwango vol.1
TDDBC in dwango vol.1
 
軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2
軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2
軽量言語メインの 文系エンジニアだった自分が Scalaのシステム開発に携わることになった経緯 @shigemk2
 
2016 Android × Scala @ScalaMatsuri2016
2016 Android × Scala @ScalaMatsuri20162016 Android × Scala @ScalaMatsuri2016
2016 Android × Scala @ScalaMatsuri2016
 
Scala界隈の近況
Scala界隈の近況Scala界隈の近況
Scala界隈の近況
 
Ruby使いのためのScalaのススメ
Ruby使いのためのScalaのススメRuby使いのためのScalaのススメ
Ruby使いのためのScalaのススメ
 
Scalaで萌える関数型プログラミング[完全版]
Scalaで萌える関数型プログラミング[完全版]Scalaで萌える関数型プログラミング[完全版]
Scalaで萌える関数型プログラミング[完全版]
 
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだScalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
 
Scala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscalaScala が支える医療系ウェブサービス #jissenscala
Scala が支える医療系ウェブサービス #jissenscala
 
Reactive microservices with play and akka
Reactive microservices with play and akkaReactive microservices with play and akka
Reactive microservices with play and akka
 
Scala@SmartNews AdFrontend を Scala で書いた話
Scala@SmartNews AdFrontend を Scala で書いた話Scala@SmartNews AdFrontend を Scala で書いた話
Scala@SmartNews AdFrontend を Scala で書いた話
 
Device Fingerprinting: オンライン広告効果計測への応用
Device Fingerprinting: オンライン広告効果計測への応用Device Fingerprinting: オンライン広告効果計測への応用
Device Fingerprinting: オンライン広告効果計測への応用
 
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuriバッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
 
あなたのScalaを爆速にする7つの方法(日本語版)
あなたのScalaを爆速にする7つの方法(日本語版)あなたのScalaを爆速にする7つの方法(日本語版)
あなたのScalaを爆速にする7つの方法(日本語版)
 
Without Resilience, Nothing Else Matters
Without Resilience, Nothing Else MattersWithout Resilience, Nothing Else Matters
Without Resilience, Nothing Else Matters
 
Why Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuriWhy Reactive Matters #ScalaMatsuri
Why Reactive Matters #ScalaMatsuri
 
Zen of Akka
Zen of AkkaZen of Akka
Zen of Akka
 
Ddd × 新人教育
Ddd × 新人教育Ddd × 新人教育
Ddd × 新人教育
 

Similar to Scalaに至るまでの物語 - Septeni × Scala 第一回 杉谷

第4回 Machine Learning 15minutes!
第4回 Machine Learning 15minutes!第4回 Machine Learning 15minutes!
第4回 Machine Learning 15minutes!XCompass
 
ホームページを制作する前に知っておきたい13のこと
ホームページを制作する前に知っておきたい13のことホームページを制作する前に知っておきたい13のこと
ホームページを制作する前に知っておきたい13のことYasushi Taki
 
【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値
【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値
【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値Uchino Masahiro
 
ほんわかLineチャットボット
ほんわかLineチャットボットほんわかLineチャットボット
ほんわかLineチャットボットGo Suzuki
 
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話Kazuki Murahama
 
IT企業じゃなくてもできる!ジワジワスクラム
IT企業じゃなくてもできる!ジワジワスクラムIT企業じゃなくてもできる!ジワジワスクラム
IT企業じゃなくてもできる!ジワジワスクラム大貴 蜂須賀
 
20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること
20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること
20150226 炎上を防ぐためにフロントエンドエンジニアとしてできることYusaku Kinoshita
 
意味を持たないチームの考える習慣
意味を持たないチームの考える習慣意味を持たないチームの考える習慣
意味を持たないチームの考える習慣大貴 蜂須賀
 
リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記
リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記
リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記Tatsuya Yokoyama
 

Similar to Scalaに至るまでの物語 - Septeni × Scala 第一回 杉谷 (10)

Sapporo20140709
Sapporo20140709Sapporo20140709
Sapporo20140709
 
第4回 Machine Learning 15minutes!
第4回 Machine Learning 15minutes!第4回 Machine Learning 15minutes!
第4回 Machine Learning 15minutes!
 
ホームページを制作する前に知っておきたい13のこと
ホームページを制作する前に知っておきたい13のことホームページを制作する前に知っておきたい13のこと
ホームページを制作する前に知っておきたい13のこと
 
【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値
【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値
【全日本不動産協会様講演資料】シェアハウス市場動向とコンセプト型シェアハウスの提供する価値
 
ほんわかLineチャットボット
ほんわかLineチャットボットほんわかLineチャットボット
ほんわかLineチャットボット
 
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
2022_08_10 SaaS.tech #5業務システム開発でデザインとフロントエンドも妥協しない話
 
IT企業じゃなくてもできる!ジワジワスクラム
IT企業じゃなくてもできる!ジワジワスクラムIT企業じゃなくてもできる!ジワジワスクラム
IT企業じゃなくてもできる!ジワジワスクラム
 
20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること
20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること
20150226 炎上を防ぐためにフロントエンドエンジニアとしてできること
 
意味を持たないチームの考える習慣
意味を持たないチームの考える習慣意味を持たないチームの考える習慣
意味を持たないチームの考える習慣
 
リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記
リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記
リクルート住まいカンパニーの新規事業でのスクラム導入奮闘記
 

Scalaに至るまでの物語 - Septeni × Scala 第一回 杉谷