SlideShare una empresa de Scribd logo
1 de 134
Descargar para leer sin conexión
加賀さんと僕
実装編
〜艦これウィジェットの課題と実装〜
@otiai10
!! 実装編です !!
サービス概要については
http://www.slideshare.net/otiai10/ss-
26631311
こちらをご覧ください
はじめに
Thanks to
and
井口裕香
目次
1. 艦これウィジェットの実装方針
2. Chrome拡張
a. なぜChrome拡張か
b. Chrome拡張のできることできないこと
3. ウィジェット化を支える技術
4. リマインダーを支える技術
a. 遠征は簡単なんすよ
b. 建造をどうするか
c. 入渠をどうするか
5. サービスデザインについて
6. まとめ
1.艦これウィジェット
の実装方針
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
運営さんが
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
運営さんが
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
運営さんが
ということで
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ということで
1. 艦これサーバに一切の負荷をかけないこと
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ということで
1. 艦これサーバに一切の負荷をかけないこと
→ ユーザのゲームプレー上で発生する正規のAPI
リクエスト以外のタイミングで、こちらでapi_token
を保持して新規のAPIリクエストを送るなどのこと
は、しない
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ということで
1. 艦これサーバに一切の負荷をかけないこと
2.
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ということで
1. 艦これサーバに一切の負荷をかけないこと
2. ゲーム内でのユーザ体験を改変しないこと
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ということで
1. 艦これサーバに一切の負荷をかけないこと
2. ゲーム内でのユーザ体験を改変しないこと
→ 艦これというゲームがゲーム内で提供する面白
さ楽しさ困難さ(←ここ重要)を破壊するような自動
化などは、しない
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
1. 艦これサーバに一切の負荷をかけないこと
2. ゲーム内でのユーザ体験を改変しないこと
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ということで
実装方針
1. 艦これサーバに一切の負荷をかけないこと
2. ゲーム内でのユーザ体験を改変しないこと
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
2.Chrome拡張
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (1)
1.
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (1)
1. 多くの人が手軽にインストールできるから
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (1)
1. 多くの人が手軽にインストールできるから
Usage share of web browsers (Source
StatCounter)
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (1)
1. 多くの人が手軽にインストールできるから
なぜChrome拡張か (2)
1. 多くの人が手軽にインストールできるから
2.
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (2)
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (2)
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
http://www.
kadokawagames.co.
jp/KanColle/
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
嘘です
なぜChrome拡張か (3)
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
3. JavaScriptしか書けないから
JavaScript
2years
PHP
1.5year
Python
0.5year
Go
1month
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か (3)
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
3. JavaScriptしか書けないから
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
.NET ObjectiveC
無理!
無理!
なぜChrome拡張か (3)
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
3. JavaScriptしか書けないから
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
専ブラ 作んの無理!
無理!
無理!
1. 多くの人が手軽にインストールできるから
2. 推奨環境であるから
3. JavaScriptしか書けないから
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
なぜChrome拡張か
Chrome拡張のできることできないこと
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. 検知できる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
b. request_bodyは取得できる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
b. 何をやろうとしたかでディスパッチできる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
b. 何をやろうとしたかでディスパッチできる
c. しかし
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
b. 何をやろうとしたかでディスパッチできる
c. responseの中身が見れない!←ここ重要
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
b. 何をやろうとしたかでディスパッチできる
c. 結果どうなったかは見れないし編集できない
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Chrome拡張のできることできないこと
1. ひととおりブラウザJavaScriptは動く
2. ブラウザのカスタマイズ
3. ブラウザのHTTPリクエストを検知できる
a. タイミングでイベントをバインドできる
b. 何をやろうとしたかでディスパッチできる
c. 結果どうなったかは見れないし編集できない
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
3.ウィジェット化(ry
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
シンプルです
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
ゲーム領域を別窓で開いているだけです
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
以上
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
4.リマインダー(ry
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる(chrome.
webRequest.onBeforeRequest)
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
3. 遠征id何番?
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
3. 遠征id何番?
4. 遠征id → 遠征所要時間(固定じゃん)
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
3. 遠征id何番?
4. 遠征id → 遠征所要時間(固定じゃん)
5. localStorageに終了時刻を保存
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
3. 遠征id何番?
4. 遠征id → 遠征所要時間(固定じゃん)
5. localStorageに終了時刻を保存
6. backgroundで終わってないか随時チェック
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
3. 遠征id何番?
4. 遠征id → 遠征所要時間(固定じゃん)
5. localStorageに終了時刻を保存
6. backgroundで終わってないか随時チェック
7. 終わってたらwebkitNotification.create.show
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
遠征は簡単なんすよ
1. HTTPリクエストをフックできる
2. request bodyは見れる
3. 遠征id何番?
4. 遠征id → 遠征所要時間(固定じゃん)
5. localStorageに終了時刻を保存
6. backgroundで終わってないか随時チェック
7. 終わってたらwebkitNotification.create.show
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ではどうするか
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
_人人人人人人人人人_
> 突然の画像処理 <
 ̄Y^Y^Y^Y^Y^Y^Y^Y ̄
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
画像断片をOCR処理する
APIサーバつくった
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
Tesseract-OCR
クライアント側
画面キャプチャから画
像断片を生成して
POST
画像を解析してOCR(文字情報抽出)処理して
文字情報(この場合 “00:59:14”)を返す
サーバ側
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. サーバ負荷が気になる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. スケーラビリティ!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. スケーラビリティといえば
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. スケーラビリティ!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
しかし PyCon APAC にて...
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
っていう話をとなりの外人としてたら
しかし PyCon APAC にて...
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
「それ、Google Compute Engine でできるよ」
PyCon APAC にて...
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
GCEの中のひとでした...
https://twitter.com/briandorsey
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. スケーラビリティ!! with
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. 一番安いインスタンスだと
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
メンションが来る
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. 拡張性 << 可用性ですよプロデューサーさん!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. 自前のVPSにしました(´・ω・`)
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
建造をどうするか
課題
1. 建造・入渠所要時間は固定ではない
2. chromeではレスポンスの中身が見れない
3. ユーザ手動登録
4. どうせなら自動でリマインダ登録したい
5. 描画されたものを画像処理して取得しよう
6. 自前のVPSにしました
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
いや、入渠も同じやろ?
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
これでいけるやろ
Tesseract-OCR
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
これで
Tesseract-OCR
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
こうして
Tesseract-OCR
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
!?
!!
_人人人人人人人人人_
> 突然のクレーン <
 ̄Y^Y^Y^Y^Y^Y^Y^Y ̄
入渠をどうするか
課題
1. クレーンがひっかかる
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画直後にキャプチャ撮ればいいのでは?
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミングは「入渠」リクエスト時ではない!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 「入渠」APIがリクエストされて、その後いくつか
の汎用的なAPIが叩かれた後に描画される仕
様になっているようだ
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) という連続
になり、API(c)のリクエストがCompleteされた
時点が描画タイミングとする
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. リクエスト直後に描画されるわけではない!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ → setTimeout
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ → setTimeout
5. 何秒?
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ → setTimeout
5. PCスペックに依存するじゃないか!!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ → setTimeout
5. 失敗ログを集めて調整するしか...(´・ω・`)
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
失敗事例ログを収集する
APIサーバつくった
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
クライアント側
失敗したときに
画像など失敗内容を
POST
サーバ側
ブラウザからいつでも
閲覧、削除可能
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ → setTimeout
5. 失敗ログを集めて描画タイミング調整
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
入渠をどうするか
課題
1. クレーンがひっかかる
2. 描画タイミング
3. 入渠API→API(a)→API(b)→API(c) onComplete
4. PCによるFlashの描画を待つ → setTimeout
5. 失敗ログを集めて描画タイミング調整
6. 現在、クライアント側画像処理を実装中
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
5.サービスデザイン
について
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
1. ゲームがゲーム内で提供するユーザ体験を改変
しない大前提
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
1. ゲームがゲーム内で提供するユーザ体験を改変
しない大前提
2. 艦娘たくさん
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
1. ゲームがゲーム内で提供するユーザ体験を改変
しない大前提
2. 艦娘たくさん
3. 艦娘かわいい
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
1. ゲームがゲーム内で提供するユーザ体験を改変
しない大前提
2. 艦娘たくさん
3. 艦娘かわいい
4. 艦娘ペロペロ
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
1. ゲームがゲーム内で提供するユーザ体験を改変
しない大前提
2. 艦娘たくさん
3. 艦娘かわいい
4. 艦娘ペロペロ
5. 提督の艦娘愛をサポートするようなツール!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
● メニューの背景画像設定
● 通知アイコン設定
● 通知音声設定
● 通知時テキスト設定
● etc...
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
1. ゲームがゲーム内で提供するユーザ体験を改変
しない大前提
2. 艦娘たくさん
3. 艦娘かわいい
4. 艦娘ペロペロ
5. 提督の艦娘愛をサポートするようなツール!
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
ゲーム内でのアクティビティを自動化し
効率的にゲームを進めるツール
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
ゲーム内でのアクティビティを自動化し
効率的にゲームを進めるツール
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
ゲーム内でのアクティビティを自動化し
効率的にゲームを進めるツール
ゲーム外でのユーザアクティビティを充実し
もっと艦これと艦これを取り巻く環境が
たのしくなるツール
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
事例
● メニューの背景画像設定
○ つくってるひといました!ありがとうございます
■ https://twitter.
com/magunamu77/status/385778873532567552
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
サービスデザインについて
ゲーム内でのアクティビティを自動化し
効率的にゲームを進めるツール
ゲーム外でのユーザアクティビティを充実し
もっと艦これと艦これを取り巻く環境が
たのしくなるツール
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
5.まとめ
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
艦これウィジェットの実装は
● 艦これ運営さんに迷惑をかけぬよう設計するのが
大変でした
● 提督の健全な提督業と艦娘愛をサポートするよう
に心がけています
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
艦これウィジェットの実装は
● 艦これ運営さんに迷惑をかけぬよう設計するのが
大変でした
● 提督の健全な提督業と艦娘愛をサポートするよう
に心がけています
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
(もちろんそうなんだけど)
だいじなのは
そこではなく
5.だいじなまとめ
艦これウィジェットの実装方針 1
Chrome拡張 2
ウィジェット化を支える技術 3
リマインダーを支える技術 4
サービスデザインについて 5
まとめ 6
「艦これ」たのしいので、
長くつづいてほしいと
ユーザとして切実思います
したがって、
運営さんからの要請が
あれば、もちろん開発
提供は止めますので、
ご了承下さい。
丁寧な運営をいつも
ありがとうございます。
長くつづいてほしいと
ユーザとして
切実思っています。
付録
● Chromeウェブストア
○ 「艦これウィジェット」
● Chrome拡張ソースコード
○ https://github.com/otiai10/kanColleWidget
● OCRサーバソースコード
○ https://github.com/otiai10/ocrServer
● Logサーバソースコード
○ https://github.com/otiai10/logServer
Thanks to
and you all, 提督

Más contenido relacionado

La actualidad más candente

BuddyPressの導入からカスタマイズまでの日記
BuddyPressの導入からカスタマイズまでの日記BuddyPressの導入からカスタマイズまでの日記
BuddyPressの導入からカスタマイズまでの日記Shoichi Otomo
 
Al mininum 47redmine-2nd
Al mininum 47redmine-2ndAl mininum 47redmine-2nd
Al mininum 47redmine-2ndmikoto20000
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題AimingStudy
 
うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?Masahiro Sano
 
Iemoto hatamotoハンズオン
Iemoto hatamotoハンズオンIemoto hatamotoハンズオン
Iemoto hatamotoハンズオン西村 州平
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理Takafumi Yoshida
 
ゲームサーバ開発現場の考え方
ゲームサーバ開発現場の考え方ゲームサーバ開発現場の考え方
ゲームサーバ開発現場の考え方Daisaku Mochizuki
 
SurfaceTextureとシェーダを使って遊んでみる
SurfaceTextureとシェーダを使って遊んでみるSurfaceTextureとシェーダを使って遊んでみる
SurfaceTextureとシェーダを使って遊んでみるTatsuya Matsumoto
 
PhotonCloudで一ヶ月ゲーム作った話
PhotonCloudで一ヶ月ゲーム作った話PhotonCloudで一ヶ月ゲーム作った話
PhotonCloudで一ヶ月ゲーム作った話Hiroto Imoto
 
Flash Playerの作り方
Flash Playerの作り方Flash Playerの作り方
Flash Playerの作り方Yu Kobayashi
 
WordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップWordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップTomoyuki Sugita
 
Node.jsで対戦ゲーム作ったよ
Node.jsで対戦ゲーム作ったよNode.jsで対戦ゲーム作ったよ
Node.jsで対戦ゲーム作ったよYuusuke Takeuchi
 
JJUG CCC 2016 fall バイトコードが君のトモダチになりたがっている
JJUG CCC 2016 fall バイトコードが君のトモダチになりたがっているJJUG CCC 2016 fall バイトコードが君のトモダチになりたがっている
JJUG CCC 2016 fall バイトコードが君のトモダチになりたがっているKoichi Sakata
 
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでScala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでHideaki Miyake
 

La actualidad más candente (19)

BuddyPressの導入からカスタマイズまでの日記
BuddyPressの導入からカスタマイズまでの日記BuddyPressの導入からカスタマイズまでの日記
BuddyPressの導入からカスタマイズまでの日記
 
Al mininum 47redmine-2nd
Al mininum 47redmine-2ndAl mininum 47redmine-2nd
Al mininum 47redmine-2nd
 
anyframeを使おう
anyframeを使おうanyframeを使おう
anyframeを使おう
 
What webpage calls.
What webpage calls.What webpage calls.
What webpage calls.
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題
 
うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?
 
Android gameprogramming
Android gameprogrammingAndroid gameprogramming
Android gameprogramming
 
Iemoto hatamotoハンズオン
Iemoto hatamotoハンズオンIemoto hatamotoハンズオン
Iemoto hatamotoハンズオン
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
 
ゲームサーバ開発現場の考え方
ゲームサーバ開発現場の考え方ゲームサーバ開発現場の考え方
ゲームサーバ開発現場の考え方
 
SurfaceTextureとシェーダを使って遊んでみる
SurfaceTextureとシェーダを使って遊んでみるSurfaceTextureとシェーダを使って遊んでみる
SurfaceTextureとシェーダを使って遊んでみる
 
PhotonCloudで一ヶ月ゲーム作った話
PhotonCloudで一ヶ月ゲーム作った話PhotonCloudで一ヶ月ゲーム作った話
PhotonCloudで一ヶ月ゲーム作った話
 
Flash Playerの作り方
Flash Playerの作り方Flash Playerの作り方
Flash Playerの作り方
 
WordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップWordCamp Kansai 2014 セキュリティ&バックアップ
WordCamp Kansai 2014 セキュリティ&バックアップ
 
Node.jsで対戦ゲーム作ったよ
Node.jsで対戦ゲーム作ったよNode.jsで対戦ゲーム作ったよ
Node.jsで対戦ゲーム作ったよ
 
JS/Canvas Tutorial3
JS/Canvas Tutorial3JS/Canvas Tutorial3
JS/Canvas Tutorial3
 
JJUG CCC 2016 fall バイトコードが君のトモダチになりたがっている
JJUG CCC 2016 fall バイトコードが君のトモダチになりたがっているJJUG CCC 2016 fall バイトコードが君のトモダチになりたがっている
JJUG CCC 2016 fall バイトコードが君のトモダチになりたがっている
 
em-dosbox
em-dosboxem-dosbox
em-dosbox
 
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでScala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまで
 

Similar a 加賀さんと僕(実装編)〜艦これウィジェットの課題と実装〜

Web chatツール開発 on the 勉強会
Web chatツール開発 on the 勉強会Web chatツール開発 on the 勉強会
Web chatツール開発 on the 勉強会Yutaka Imamura
 
Chrome Extensionで スクリーンシェアをやってみる
Chrome ExtensionでスクリーンシェアをやってみるChrome Extensionでスクリーンシェアをやってみる
Chrome Extensionで スクリーンシェアをやってみるYusuke Naka
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1近藤 繁延
 
Chromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうChromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうmganeko
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2近藤 繁延
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
Web制作者がandriodのcddを読んでみた
Web制作者がandriodのcddを読んでみたWeb制作者がandriodのcddを読んでみた
Web制作者がandriodのcddを読んでみたMasakazu Muraoka
 
Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Masakazu Muraoka
 
マークアップ講座 01a プロローグ
マークアップ講座 01a プロローグマークアップ講座 01a プロローグ
マークアップ講座 01a プロローグeiji sekiya
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywordsuupaa
 
Chromeでストレージ永続化を実現するには
Chromeでストレージ永続化を実現するにはChromeでストレージ永続化を実現するには
Chromeでストレージ永続化を実現するにはgoccy
 
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割Toru Yamaguchi
 
Chrome DevTools.next
Chrome DevTools.nextChrome DevTools.next
Chrome DevTools.nextyoshikawa_t
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slidecosmo0920
 
DevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックDevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックYu Kitazume
 
ABC2012Spring 20120324
ABC2012Spring 20120324ABC2012Spring 20120324
ABC2012Spring 20120324Tak Inamori
 
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築CROOZ, inc.
 

Similar a 加賀さんと僕(実装編)〜艦これウィジェットの課題と実装〜 (20)

Web chatツール開発 on the 勉強会
Web chatツール開発 on the 勉強会Web chatツール開発 on the 勉強会
Web chatツール開発 on the 勉強会
 
Css3
Css3Css3
Css3
 
Chrome Extensionで スクリーンシェアをやってみる
Chrome ExtensionでスクリーンシェアをやってみるChrome Extensionでスクリーンシェアをやってみる
Chrome Extensionで スクリーンシェアをやってみる
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
 
Chromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそうChromebook 「だけ」で WebRTCを動かそう
Chromebook 「だけ」で WebRTCを動かそう
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
Web制作者がandriodのcddを読んでみた
Web制作者がandriodのcddを読んでみたWeb制作者がandriodのcddを読んでみた
Web制作者がandriodのcddを読んでみた
 
Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1Web制作者がandriodのcddを読んでみた version1.1
Web制作者がandriodのcddを読んでみた version1.1
 
マークアップ講座 01a プロローグ
マークアップ講座 01a プロローグマークアップ講座 01a プロローグ
マークアップ講座 01a プロローグ
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
 
Chromeでストレージ永続化を実現するには
Chromeでストレージ永続化を実現するにはChromeでストレージ永続化を実現するには
Chromeでストレージ永続化を実現するには
 
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
 
Chrome DevTools.next
Chrome DevTools.nextChrome DevTools.next
Chrome DevTools.next
 
Mvc conf session_5_isami
Mvc conf session_5_isamiMvc conf session_5_isami
Mvc conf session_5_isami
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
 
DevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックDevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニック
 
ABC2012Spring 20120324
ABC2012Spring 20120324ABC2012Spring 20120324
ABC2012Spring 20120324
 
About WebRTC
About WebRTCAbout WebRTC
About WebRTC
 
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
 

加賀さんと僕(実装編)〜艦これウィジェットの課題と実装〜