ハンズオン講師を担当した Redash Meetup を振り返る

今日は「Redash Advent Calendar 2017」25日目の記事を書く.参加者が集まらなかったらどうしよう...と不安を抱えながらも公開したアドベントカレンダーだったけど,気付くと全枠埋まっていて,さらにどの記事も素晴らしく,とにかく最高だった!アドベントカレンダーをキッカケに開催が実現した Redash Meetup を振り返りたいと思う.

qiita.com

既に id:ariarijp から KPT をまとめた記事も出ていて,合わせて読んでもらえると!

ariarijp.hatenablog.com

Redash Meetup

12/19 に Redash Meetup #0 を開催し,ハンズオンイベントとして講師を担当させてもらった.なお,今後 Redash Meetup ではハンズオンイベントだけではなく,実践的な勉強会なども開催する予定がある.

redash-meetup.connpass.com

ハンズオンイベントでは,既にアドベントカレンダーでも紹介した「Redash ハンズオン資料」を使った.基本的には独学できるように作っているし,2時間あれば終わるような量になっているので,年末年始に是非試してもらえると!

kakakakakku.hatenablog.com

勉強会を開催することの大変さ

勉強会の開催はほぼ id:ariarijp にお願いするような形になってしまって,本当に頼もしかった.会場を探し,日程を調整し,キャンセルを考慮して人数を決め,当日のスケジュールを考え,とにかく考えることばかりだった.開催に必要なタスクは全て Trello で管理し,完了の定義も決めて,毎日何かしらの進捗があるように進めていた.

なお,connpass では「イベント統計」を見ることができる.イベントを公開した日にキャンセル待ちになり,翌日には定員の2倍の申し込みになっていた.ここまで人気になるとは予想できてなく,ハンズオンイベントの需要の高さを感じることができた.

f:id:kakku22:20171225010541p:plain

ハンズオンを振り返る

資料

speakerdeck.com

ハンズオンスタイル

ハンズオンとは言え,参加者によってスキルレベルが異なることを予想していたため,全体でペースを合わせながら進めるのではなく,基本的にはもくもく進めてもらうスタイルを選んだ.これは大正解だったと思う.また10名の参加者を2テーブルに分散させ,僕が担当するテーブルと id:ariarijp が担当するテーブルに分けた.その結果,ハンズオンの質問だけではなく,運用 Tips,会社での活用方法など,様々な話をすることができた点も良かった.

ハンズオン当日にバタバタしたこと

ハンズオン資料では Redash を Docker Compose で起動できるようにしていて,さらに Docker For Mac と Docker For Windows での動作確認もしたため,問題ないだろうと考えていたけど,Windows 10 Home + Docker Toolbox という環境があったり,クラウド環境上の Ubuntu + Docker という環境があったり,謎のエラーで起動に失敗する Docker があったりした.その場で対応をしてハンズオンに大きな影響はなかったけど,参加者は「構築方法」ではなく「操作方法」を学びに来ているため,究極的には「構築済の Redash インスタンス」を構築しておいて,すぐに始められる形が良いのかもしれないなと感じた.また,もしものために個人用の Mac を2台用意しておいたので,どうしても環境構築に失敗する人に使ってもらうことができた.これはリスクとして考えておいて本当に良かった.

ハンズオン中に多くあった質問

create_db でエラーが出る

Docker Compose で create_db を実行するとエラーが出る場合がある.これは複数のコンテナ間で起動順序を意識していないために起きるもので,具体的には PostgreSQL の起動を待つと解消する.既にプルリクも出ているけど,現時点では Merge されていないため,ここに関しては「気にせず,もう1度実行しましょう」という回答をした.

github.com

ダッシュボードにウィジェットを追加するときにグラフ名が補完されない

ダッシュボードにウィジェットを追加するときに,グラフ名が補完されないという質問があり,僕のテーブルではほぼ全員から聞かれた気がする.Redash の実装では「最低3文字」を入力しないと補完されないようになっていて,例えば「国の一」まで入れると補完される.グラフ数が多い場合を考慮してだとは思うけど,別に1文字で補完しても良いと思うんだけどなぁー.ここも「今回はグラフ名を全て入力してしまいましょう」という回答をした.ちなみに add-widget-dialog.js に実装がある.

this.searchQueries = (term) => {
  if (!term || term.length < 3) {
    return;
  }

  Query.search({ q: term }, (results) => {
    this.queries = results;
  });
};

f:id:kakku22:20171225010604p:plain

自由演習 + α

ハンズオンだけでは時間が余ってしまう可能性もあったため,事前に自由演習を用意しておいた.しかし,実際には自由演習も終わってしまう人もいたため,追加で Redash 運用のコツなどを話した.

  • 自由演習 1
    • 円グラフの作成
    • 棒グラフの作成
    • ダッシュボードの作成
  • 自由演習 2
    • Redash 内部の PostgreSQL に接続するデータソースを追加
    • クエリ全件を取得するクエリの作成
    • イベント件数を時系列に表示するグラフの作成
  • 追加演習
    • 一般ユーザー登録をして,アクセス制御の確認をした
    • 管理者専用画面 (/admin) の解説
    • システムステータス画面 (/admin/status) の解説
    • Google Spreadsheets 連携の解説

次回開催

1月末に再演予定!お楽しみに!

レポート記事

tech-progrhyme.hatenablog.com

qiita.com