玄人Macデベロッパーである@hiroshi3110さんに聞かれました。

せっかくなので怖話のダッシュボードの実装についてご紹介。

https://gyazo.com/b7cdc15a354ebafb347742bd11368abe

ダッシュボード | 怖話(こわばな)

Team Dashboardから自作へ

以前ブログに書いたTeam Dashboardはもう使ってません。今は怖話内の1ページとして作っています。

Team Dashboardで目標数字をチームで共有する - komagata

最初は表示するだけで満足してたんですが、スクラムでスプリント毎に数値ベースの仮説検証をしはじめたら痒いところに手が届かなくなり、自前実装になりました。

ダッシュボードはフレームワークやSaaSがたくさんありますがロードアベレージや通信量などインフラ向け作られているのが多くてマッチしなかったです。

使っているツール

ただのRailsのページなのでjQueryです。チャートはChart.jsを使っています。(Highchartsを使いたかったけどオープンソースのがいいので)

今のところデータソースは下記です。

  • Google Analytics API
  • 怖話のDB
  • 自前のGoogle検索結果収集サービス
  • App Annie API

Google Analytics(以下GA)で取れないものをほかで補う形です。(Google AnalyticsとApp Annieが提携したので取れるかも?)

自前のGoogle検索結果収集サービス

他のサイトでも使いたいのでHerokuにアプリとして置いてます。その過程で下記gemを作りました。

Googleでの検索順位を取る - komagata

Herokuのアプリは上記を使ってMongoLabに1日1回保存してるだけです。JSON APIはMongoLabが提供してるので自分で書く必要なし。便利。

DistimoからApp Annieへ

アプリダウンロード数はDistimo APIを使ってましたが、App Annieへ吸収され消滅しました。

iPhone・Androidアプリのダウンロード数をTeam Dashboardで出す - komagata

アカウントとデータはサービス側で移行してくれたのですが、APIは別なのでがんばって書き換えました。(報われない系仕事)

Google Analytics最強伝説

ほとんどのイベントトラッキングはGAさえあれば可能で、性能・価格的にも最強ってわかっちゃいるけど真正面から取り組むことを避けていました。

難しいんですよね。GA。何冊書籍読んでもよくわかりませんでした。

プログラマーにおすすめなのは一度GAのAPIを使って自前でダッシュボード作ってみることです。そうするとGAの仕組みがスッキリ理解できます。

「GAサイトにある画面のどれでも自前で再現できるぞ!」

となるので、Webの数値への苦手感がなくなります。

Comments


Option