Enviar pesquisa
Carregar
地獄Spec
•
8 gostaram
•
1,698 visualizações
Drecom Co., Ltd.
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 46
Baixar agora
Baixar para ler offline
Recomendados
カンバンと朝会とわたくし
カンバンと朝会とわたくし
Drecom Co., Ltd.
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
Go Sueyoshi (a.k.a sue445)
Webアプリケーションは難しい
Webアプリケーションは難しい
Takafumi ONAKA
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
Go Sueyoshi (a.k.a sue445)
ドリコムを支える課金ライブラリを支えるJenkins
ドリコムを支える課金ライブラリを支えるJenkins
Go Sueyoshi (a.k.a sue445)
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
Tokoroten Nakayama
ドリコムのインフラCI
ドリコムのインフラCI
Go Sueyoshi (a.k.a sue445)
【とらのあなラボ Tech Day #3】新規システムにおける技術選定〜GoとgRPCを採用した話〜
【とらのあなラボ Tech Day #3】新規システムにおける技術選定〜GoとgRPCを採用した話〜
虎の穴 開発室
Recomendados
カンバンと朝会とわたくし
カンバンと朝会とわたくし
Drecom Co., Ltd.
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
Resemaraを支えた技術 フライングゲットガチャの舞台裏 #ksgstudy #ドリコム
Go Sueyoshi (a.k.a sue445)
Webアプリケーションは難しい
Webアプリケーションは難しい
Takafumi ONAKA
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
社内ツールが支えるドリコムの社内勉強会文化 #metabenkyokai
Go Sueyoshi (a.k.a sue445)
ドリコムを支える課金ライブラリを支えるJenkins
ドリコムを支える課金ライブラリを支えるJenkins
Go Sueyoshi (a.k.a sue445)
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
Tokoroten Nakayama
ドリコムのインフラCI
ドリコムのインフラCI
Go Sueyoshi (a.k.a sue445)
【とらのあなラボ Tech Day #3】新規システムにおける技術選定〜GoとgRPCを採用した話〜
【とらのあなラボ Tech Day #3】新規システムにおける技術選定〜GoとgRPCを採用した話〜
虎の穴 開発室
RSpec Performance Turning
RSpec Performance Turning
Go Sueyoshi (a.k.a sue445)
技術書へのいざない
技術書へのいざない
Go Sueyoshi (a.k.a sue445)
スペシャリストになるには
スペシャリストになるには
外道 父
プリキュアのRuby実装の紹介 #tqrk08
プリキュアのRuby実装の紹介 #tqrk08
Go Sueyoshi (a.k.a sue445)
実録!Railsのはまりポイント10選
実録!Railsのはまりポイント10選
Drecom Co., Ltd.
Html5超入門
Html5超入門
Monaca
GitHub APIとfreshで遊ぼう
GitHub APIとfreshで遊ぼう
虎の穴 開発室
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
こんな辛いテストはいやだ
こんな辛いテストはいやだ
Takuya Mikami
C#で速度を極めるいろは
C#で速度を極めるいろは
Core Concept Technologies
Elixir-Conf-Japan-2017-session-ohr486
Elixir-Conf-Japan-2017-session-ohr486
Tsunenori Oohara
これからはじめるインフラエンジニア
これからはじめるインフラエンジニア
外道 父
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
Masahito Zembutsu
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
Go Sueyoshi (a.k.a sue445)
社内テストファースト勉強会
社内テストファースト勉強会
Go Sueyoshi (a.k.a sue445)
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Manabu Koga
ニュースアプリで起きた不具合から学んだ 最適への一歩
ニュースアプリで起きた不具合から学んだ 最適への一歩
Yahoo!デベロッパーネットワーク
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
Akihiro Kuwano
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
Kiwamu Okabe
ソーシャルゲームスケールアウトの歴史
ソーシャルゲームスケールアウトの歴史
Drecom Co., Ltd.
ソーシャルアプリを分析してみた
ソーシャルアプリを分析してみた
Drecom Co., Ltd.
Mais conteúdo relacionado
Mais procurados
RSpec Performance Turning
RSpec Performance Turning
Go Sueyoshi (a.k.a sue445)
技術書へのいざない
技術書へのいざない
Go Sueyoshi (a.k.a sue445)
スペシャリストになるには
スペシャリストになるには
外道 父
プリキュアのRuby実装の紹介 #tqrk08
プリキュアのRuby実装の紹介 #tqrk08
Go Sueyoshi (a.k.a sue445)
実録!Railsのはまりポイント10選
実録!Railsのはまりポイント10選
Drecom Co., Ltd.
Html5超入門
Html5超入門
Monaca
GitHub APIとfreshで遊ぼう
GitHub APIとfreshで遊ぼう
虎の穴 開発室
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
こんな辛いテストはいやだ
こんな辛いテストはいやだ
Takuya Mikami
C#で速度を極めるいろは
C#で速度を極めるいろは
Core Concept Technologies
Elixir-Conf-Japan-2017-session-ohr486
Elixir-Conf-Japan-2017-session-ohr486
Tsunenori Oohara
これからはじめるインフラエンジニア
これからはじめるインフラエンジニア
外道 父
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
Masahito Zembutsu
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
Go Sueyoshi (a.k.a sue445)
社内テストファースト勉強会
社内テストファースト勉強会
Go Sueyoshi (a.k.a sue445)
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
Manabu Koga
ニュースアプリで起きた不具合から学んだ 最適への一歩
ニュースアプリで起きた不具合から学んだ 最適への一歩
Yahoo!デベロッパーネットワーク
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
Akihiro Kuwano
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
Kiwamu Okabe
Mais procurados
(20)
RSpec Performance Turning
RSpec Performance Turning
技術書へのいざない
技術書へのいざない
スペシャリストになるには
スペシャリストになるには
プリキュアのRuby実装の紹介 #tqrk08
プリキュアのRuby実装の紹介 #tqrk08
実録!Railsのはまりポイント10選
実録!Railsのはまりポイント10選
Html5超入門
Html5超入門
GitHub APIとfreshで遊ぼう
GitHub APIとfreshで遊ぼう
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
こんな辛いテストはいやだ
こんな辛いテストはいやだ
C#で速度を極めるいろは
C#で速度を極めるいろは
Elixir-Conf-Japan-2017-session-ohr486
Elixir-Conf-Japan-2017-session-ohr486
これからはじめるインフラエンジニア
これからはじめるインフラエンジニア
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
社内テストファースト勉強会
社内テストファースト勉強会
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
サーバー未経験者がソーシャルゲームを通して知ったサーバーの事
ニュースアプリで起きた不具合から学んだ 最適への一歩
ニュースアプリで起きた不具合から学んだ 最適への一歩
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
オンプレエンジニアがクラウドエンジニアを夢見て。じっと手を見る。
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
組込向けHaskellコンパイラAjhc / POSIX依存から脱出しよう編
Destaque
ソーシャルゲームスケールアウトの歴史
ソーシャルゲームスケールアウトの歴史
Drecom Co., Ltd.
ソーシャルアプリを分析してみた
ソーシャルアプリを分析してみた
Drecom Co., Ltd.
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
Drecom Co., Ltd.
5年後のデータサイエンティスト
5年後のデータサイエンティスト
Drecom Co., Ltd.
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
Drecom Co., Ltd.
エンジニア生存戦略
エンジニア生存戦略
Drecom Co., Ltd.
activerecord-turntable
activerecord-turntable
Drecom Co., Ltd.
ドリコム流。教育アプリにおけるゲーミフィケーションノウハウ
ドリコム流。教育アプリにおけるゲーミフィケーションノウハウ
trendism
[CEDEC2014]モバイルゲームにおける社内基盤開発と“実録”
[CEDEC2014]モバイルゲームにおける社内基盤開発と“実録”
Drecom Co., Ltd.
フライングゲットガチャ セミナー資料
フライングゲットガチャ セミナー資料
Drecom Co., Ltd.
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
Drecom Co., Ltd.
Railsによるワイルドなソフトウェア開発
Railsによるワイルドなソフトウェア開発
Drecom Co., Ltd.
gemの複数バージョンカジュアルテスト #shibuyarb
gemの複数バージョンカジュアルテスト #shibuyarb
Go Sueyoshi (a.k.a sue445)
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話
Drecom Co., Ltd.
My sql casual talks vol.6
My sql casual talks vol.6
Satoshi Suzuki
とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)
Takafumi ONAKA
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
Drecom Co., Ltd.
ドリコムの分析環境とデータサイエンス活用事例
ドリコムの分析環境とデータサイエンス活用事例
Yohei Sato
Tokyor42_r_datamining_18
Tokyor42_r_datamining_18
Yohei Sato
DAUを評価指標から捨てた会社の話 #tokyowebmining
DAUを評価指標から捨てた会社の話 #tokyowebmining
Tokoroten Nakayama
Destaque
(20)
ソーシャルゲームスケールアウトの歴史
ソーシャルゲームスケールアウトの歴史
ソーシャルアプリを分析してみた
ソーシャルアプリを分析してみた
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
CEDEC 2015 Cocos2d-x と社内基盤の付き合い方 〜アップストリームファーストを目指して〜
5年後のデータサイエンティスト
5年後のデータサイエンティスト
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
エンジニア生存戦略
エンジニア生存戦略
activerecord-turntable
activerecord-turntable
ドリコム流。教育アプリにおけるゲーミフィケーションノウハウ
ドリコム流。教育アプリにおけるゲーミフィケーションノウハウ
[CEDEC2014]モバイルゲームにおける社内基盤開発と“実録”
[CEDEC2014]モバイルゲームにおける社内基盤開発と“実録”
フライングゲットガチャ セミナー資料
フライングゲットガチャ セミナー資料
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
Railsによるワイルドなソフトウェア開発
Railsによるワイルドなソフトウェア開発
gemの複数バージョンカジュアルテスト #shibuyarb
gemの複数バージョンカジュアルテスト #shibuyarb
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話
My sql casual talks vol.6
My sql casual talks vol.6
とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
CEDEC 2015 IoT向け汎用protocol MQTTのリアルタイムゲーム通信利用と実装、そして未来へ…
ドリコムの分析環境とデータサイエンス活用事例
ドリコムの分析環境とデータサイエンス活用事例
Tokyor42_r_datamining_18
Tokyor42_r_datamining_18
DAUを評価指標から捨てた会社の話 #tokyowebmining
DAUを評価指標から捨てた会社の話 #tokyowebmining
Semelhante a 地獄Spec
iPhoneアプリ無料勉強会 vol1
iPhoneアプリ無料勉強会 vol1
codeal
Android勉強会第二回-非同期処理-
Android勉強会第二回-非同期処理-
Hiroki Sakamoto
Tokyo r30 beginner
Tokyo r30 beginner
Takashi Minoda
java-ja TDD 2nd
java-ja TDD 2nd
Takuto Wada
RSpecが遅いからはやくしてみた...................................
RSpecが遅いからはやくしてみた...................................
yutonoda2
Tokyo r38
Tokyo r38
Takashi Minoda
1ヶ月で作り切る!スタートアップのための Rails 爆速開発術 (20170306)
1ヶ月で作り切る!スタートアップのための Rails 爆速開発術 (20170306)
Masataka Sato
PreadNet
PreadNet
Junya Kuwada
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
Hiroyuki Ohnaka
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
NTT DATA Technology & Innovation
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門
Minoru Maeda
RubyKaigi2011の雰囲気
RubyKaigi2011の雰囲気
Sea Mountain
Infrastructure as Codeってなんだったっけ?
Infrastructure as Codeってなんだったっけ?
Terui Masashi
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf
耕二 阿部
第1回 Android勉強会
第1回 Android勉強会
fujikunn
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島
Tomohiko Himura
もしSIerのエンジニアがSRE本を読んだら
もしSIerのエンジニアがSRE本を読んだら
Tomoki Ando
Unityとスマートフォンアプリの最適化
Unityとスマートフォンアプリの最適化
COLOPL, Inc.
OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介
Hiromu Yakura
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Naoki Umehara
Semelhante a 地獄Spec
(20)
iPhoneアプリ無料勉強会 vol1
iPhoneアプリ無料勉強会 vol1
Android勉強会第二回-非同期処理-
Android勉強会第二回-非同期処理-
Tokyo r30 beginner
Tokyo r30 beginner
java-ja TDD 2nd
java-ja TDD 2nd
RSpecが遅いからはやくしてみた...................................
RSpecが遅いからはやくしてみた...................................
Tokyo r38
Tokyo r38
1ヶ月で作り切る!スタートアップのための Rails 爆速開発術 (20170306)
1ヶ月で作り切る!スタートアップのための Rails 爆速開発術 (20170306)
PreadNet
PreadNet
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
Redmineプラグイン導入・開発入門
Redmineプラグイン導入・開発入門
RubyKaigi2011の雰囲気
RubyKaigi2011の雰囲気
Infrastructure as Codeってなんだったっけ?
Infrastructure as Codeってなんだったっけ?
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf
ソフトウェア設計原則【SOLID】を学ぶ #1 単一責務の原則(single-responsibility principle).pdf
第1回 Android勉強会
第1回 Android勉強会
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島
もしSIerのエンジニアがSRE本を読んだら
もしSIerのエンジニアがSRE本を読んだら
Unityとスマートフォンアプリの最適化
Unityとスマートフォンアプリの最適化
OSS奨励賞受賞プレゼン 活動紹介
OSS奨励賞受賞プレゼン 活動紹介
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Ricoh UCS for iPad でみる エンタープライズ アジャイル開発
Mais de Drecom Co., Ltd.
コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活
Drecom Co., Ltd.
サービスのインシデントを解決するには.pdf
サービスのインシデントを解決するには.pdf
Drecom Co., Ltd.
ドリコムサマージョブ報告 by 佐々木 誠治
ドリコムサマージョブ報告 by 佐々木 誠治
Drecom Co., Ltd.
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
Drecom Co., Ltd.
HTML5 ゲームフレームワーク開発について
HTML5 ゲームフレームワーク開発について
Drecom Co., Ltd.
「AROW」お披露目(導入編)
「AROW」お披露目(導入編)
Drecom Co., Ltd.
「AROW」お披露目(実用編)
「AROW」お披露目(実用編)
Drecom Co., Ltd.
AROW の紹介 〜概要編〜
AROW の紹介 〜概要編〜
Drecom Co., Ltd.
AROW の紹介 〜実践編〜
AROW の紹介 〜実践編〜
Drecom Co., Ltd.
rails-developers-meetup-day4
rails-developers-meetup-day4
Drecom Co., Ltd.
html5conf2018-sponsor-session
html5conf2018-sponsor-session
Drecom Co., Ltd.
DApps のユーザ認証に web3.eth.personal.sign を使おう!
DApps のユーザ認証に web3.eth.personal.sign を使おう!
Drecom Co., Ltd.
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
Drecom Co., Ltd.
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
Drecom Co., Ltd.
今月のレッツゴー陰陽師!
今月のレッツゴー陰陽師!
Drecom Co., Ltd.
位置情報を常に取得するのはつらいよ
位置情報を常に取得するのはつらいよ
Drecom Co., Ltd.
Mais de Drecom Co., Ltd.
(16)
コンテナで始める柔軟な AWS Lambda 生活
コンテナで始める柔軟な AWS Lambda 生活
サービスのインシデントを解決するには.pdf
サービスのインシデントを解決するには.pdf
ドリコムサマージョブ報告 by 佐々木 誠治
ドリコムサマージョブ報告 by 佐々木 誠治
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
DRECOM Summer Internship 2019 成果発表 by 鹿内 裕介
HTML5 ゲームフレームワーク開発について
HTML5 ゲームフレームワーク開発について
「AROW」お披露目(導入編)
「AROW」お披露目(導入編)
「AROW」お披露目(実用編)
「AROW」お披露目(実用編)
AROW の紹介 〜概要編〜
AROW の紹介 〜概要編〜
AROW の紹介 〜実践編〜
AROW の紹介 〜実践編〜
rails-developers-meetup-day4
rails-developers-meetup-day4
html5conf2018-sponsor-session
html5conf2018-sponsor-session
DApps のユーザ認証に web3.eth.personal.sign を使おう!
DApps のユーザ認証に web3.eth.personal.sign を使おう!
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
3Dリアルマップを用いたモバイルゲーム開発における課題とその解決方法
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
LoveChainのスマートコントラクトを見てみよう & 非中央集権なトークンのカタチ
今月のレッツゴー陰陽師!
今月のレッツゴー陰陽師!
位置情報を常に取得するのはつらいよ
位置情報を常に取得するのはつらいよ
地獄Spec
1.
地獄の RSpec 逃げちゃだめだ、逃げちゃだめだ・・・
おおはら@Drecom Co., Ltd.
2.
警告 このプレゼンを見てから7日以内にspecヲ 20コGreenにしないといけません。さもなくば 貴方のプロジェクトは炎上し、メンバーは 疲れ果て疾走し行方不明になる可能性 があります。 貴方のプロジェクト、大丈夫ですか・・・?
3.
提供 DRECOM
R With entertainment
4.
自己紹介 おおはらつねのり アプリケーションエンジニア 所属:広告事業本部 twitterアカウント:@ohrdev
5.
経歴 Rails歴:2年半 札幌の会社からドリコムへ転職 元SIer(元IT亡者) ソーシャルゲームはヤった事ない(シゴトハノゾク)
6.
7.
今日の おはなし
8.
テスト
9.
RSpec
10.
質問1 spec
11.
何
緑 時 赤 最 初 気 。 。
12.
グリーン維 持は大変
13.
質問2 グリーン維 持してる?
14.
理想的な プロジェクト なら・・・
15.
16.
だが現実は キビシイ・・・
17.
18.
現実
19.
20.
うちのシステ ムでRSPEC導 入した時の話
21.
組織(広告事業部)
企画 営業 開発 受注 クライアント カスタマー サポート
22.
サービス(poncan) ソーシャルアプリ向けリワード広告サービス http://www.slideshare.net/CyLab/poncan2 リワード広告とは: ユーザーに広告を提供し、その成果に対して 一定の報酬(ポイント等)を支払うサービス
23.
システム(poncan) Rails2.3.8 + passenger Ruby1.8.7 MySQL5 Memcached(acts_as_cached) Resque/Redis
24.
運用 止めれない(サーバー停止のメンテは基本なし) Migrationは使用しない(できない) →openark kit/oak-online-alter-table (1日のリリース:2.1回) (1日コミット数:22.3回) (毎日リリース・毎週機能追加・拡張)
25.
背景 テストコード(メンテされて)なかった リリースまでに(チェックで)時間かかる 漏れや事故が多い
26.
バグ
事故 漏れ poncan 安心感 テストコード(のメンテ)不足
27.
28.
Specを書けよ デコ助野郎!
29.
RSpec
開発メンバー
30.
①導入前の状態 有効なRSpecほぼ無し 自動生成されたtestunitが少々 誰も動かしていない 当然メンテもしていない
31.
②導入直後にやった事 メンテされていないテストコードは削除 -流用できないコード多数 -そもそも仕様が既に変わっている 自動生成されたコードも削除 テスト用データ -fixturesからFactoryGirlに移行
32.
②失敗・教訓(導入直後) とりあえず動くだけでは不十分 -実行時間が長いと流さなくなる 自動で動かさないと忘れる -autotest使うようにした テストデータを全てFactoryGirlで賄うのは面倒 -マスタデータはfixtures
-トランザクションデータはFactoryGirl
33.
③しばらく経って(1週間位)やった事 Specを書く対象を絞った -まずはmodelから書いていく事にした -controllerは後回し
34.
③失敗・教訓(しばらく経って) ビジネスロジック部分をspecの対象にすべきだった -modelだけでは不十分で、(Fat)controller のロジック部分も対象にしないと無意味 万遍なくspecを書こうとして途方に暮れた -全部書く時間ない・モチベーション下がる -修正の入った箇所から充実させていった
35.
④慣れてきた頃(1ヶ月位)にやった事 CIを導入した -手軽なBigTunaを採用 遅い処理の改善 -テストダブル(モック・スタブ)に置き換え -migrationからschema.rb読み込みに変更
36.
④失敗・教訓(慣れてきた頃) CIの失敗通知が続いてREDに慣れてしまった -失敗だけでなく失敗数も通知するようにした -オールグリーンを目標に設定 -だんだんREDが減っていくのを見てモチベ△ メンバー間のspecの書き方に統一性が無くなってきた -勉強会・共有会で書き方をある程度共有 -THE RSPEC BOOK
37.
⑤充実してきた頃(3ヶ月位)にやった事 カバレッジを指標にした -rake spec:rcov テストデータの整理 -モデル(テーブル)数80くらい
38.
⑤失敗・教訓(充実してきた頃) カバレッジは万能じゃない -「レガシーコード=テストの無いコード」なので意 味はあるが・・・ -Reekを取るようにした(お手軽/ReekViewer) https://github.com/Shinya131/reekviewer FactoryGirlがパンクした -factory.rbに全てぶっ込むのではなく、
factoriesフォルダ以下にファイル分割配置 -リレーション指定やりすぎると破綻(メンテ不能)に
39.
⑥グリーンになって(5ヶ月位)にやった事 trunkとbranchに対してそれぞれCIを回した -管理・配信・配信(mixi特化)アプリごとに、そ れぞれ計6つのCIを回す -trunkとbranchの差分を全てチェック(苦行) レッドからグリーンにするではなく、グリーンを維持する
ように目標をシフト
40.
⑥失敗・教訓(グリーンになって) Trunkはグリーンだけど、branchはレッドという状況に -息の長いbranchだと未マージ・マージ漏れが 発生しうる -特定のコードをbranchにマージする・しないで赤
だったり緑だったりするケースがある なるべくtrunkとbranchの差分を小さくするように意 識
41.
⑦そして今に至る・・・
ビフォー
42.
⑦そして今に至る・・・ アフター
43.
結果どうなった? リリース頻度が加速 -漏れ・事故が少なくなった -即リリース・即bug発見・即修正・即リリース・・・ “ある程度”安心できる trunkとbrunchの差分が減った 100%bug潰すのは無理だけど、即発見・修正はでき る
44.
今後 Rails2.3.8から、Rails3.xにVerUp -Jenkins + rvm
+ rails3.x でCI回す もうなにも怖くない(CIまわしてればある程度) Seleniumで面もチェック -目確認は(最低限しか)したくない 引き続きGREEN維持
45.
まとめ RSpecちゃんとしたら、リリース頻度あがった Specメンテ => CI導入
じゃなくて、 CI導入 => Specメンテ ってするとウマく回った BUG潰し・予防よりもBUGの早期発見・早期修正に役 立った BUGは出る時は出る、Rspec/CIは万能じゃないの で注意
46.
ドリコムメンバー募集 ドリコム広告事業本部では、テスト好きなメンバーを 募集しています。 http://www.drecom.co.jp/recruit/
Baixar agora